Я пытаюсь создать промо-группу, используя одно поле promo_code
в месяц, где есть вероятность, что в одном customer_ID
будет несколько транзакций и два разных промо-кода
SELECT customer_id AS buyer,
CASE
WHEN COUNT(DISTINCT flag_promo) = 2 THEN 'Mixed'
WHEN COUNT(DISTINCT flag_promo) = 1 AND flag_promo = 1 THEN 'Promo'
WHEN COUNT(DISTINCT flag_promo) = 1 AND flag_promo = 0 THEN 'Organic'
END AS promo_group
FROM TABLE
WHERE DATE BETWEEN '2019-04-01' AND '2019-04-30'
GROUP BY 1
ORDER BY 2
Это дало мне сообщение об ошибке:
SELECT list expression references column flag_promo which is neither grouped nor aggregated at [4:41]