Я делаю соединение здесь, где я в основном беру все столбцы из одной таблицы с первичным ключом и многими другими столбцами (слишком много, чтобы хотеть печатать), а затем присоединяюсь ко второй таблице, где все столбцы будут агрегированы по первичный ключ первого.
Упрощенная версия выглядит следующим образом:
SELECT a.*, COUNT(DISTINCT b.date), SUM(b.spend)
FROM table_1 a
LEFT JOIN table_2.b
ON a.cust_id = b.cust_id
GROUP BY a.* ;
Я знаю, что приведенный выше синтаксис работает в программах SQL, таких как Teradata, но в SAS Enterprise Guide, используя PROC SQL, я получаю следующую ошибку:
ERROR: * used in an illegal position.
ERROR: The following columns were not found in the contributing tables: a.
По сути, SAS, похоже, не распознает *, когда ему предшествует псевдоним.
Какие-либо предложения? Спасибо.