Что произойдёт в СУБД, строго следующей стандарту SQL, при выполнении запроса SELECT user_id, created_at, COUNT(*) FROM orders GROUP BY user_id;?

AЗапрос выполнится, и created_at будет произвольным значением из группы.
BЗапрос завершится ошибкой: created_at должен быть в GROUP BY или внутри агрегатной функции.
CБудет автоматически добавлен GROUP BY user_id, created_at.
Dcreated_at во всех строках станет NULL.
Правильный ответ. Все неагрегированные колонки из SELECT должны входить в GROUP BY.

Разбор

В стандартном SQL любая колонка, указанная в списке SELECT и не обёрнутая агрегатной функцией (COUNT, SUM и т.д.), должна быть перечислена в GROUP BY. Иначе запрос считается некорректным и завершается ошибкой.

Проверь себя · 1/3разбор после ответа
Что делает HAVING?
Тренировать SQL в Telegram

Ещё вопросы по теме «Агрегация, GROUP BY и HAVING»