Ниже мой запрос. Я не могу понять, как работает выражение count в приведенном ниже запросе.Как работать с count в ms sql?
SQL > SELECT * FROM CUSTOMERS
GROUP BY age
HAVING COUNT(age) >= 2;
Как работает подсчет утверждений?
Ниже мой запрос. Я не могу понять, как работает выражение count в приведенном ниже запросе.Как работать с count в ms sql?
SQL > SELECT * FROM CUSTOMERS
GROUP BY age
HAVING COUNT(age) >= 2;
Как работает подсчет утверждений?
Ваш запрос не может быть выполнен из-за *
в избранном.
В принципе, если у вас есть group by
в запросе - вы можете выбрать либо столбцы в group by
заявления или результаты применения некоторых агрегатных функций к столбцам (например, sum
, max
, min
и так далее).
Что касается Вашего вопроса - например, если вы измените его на
SELECT COUNT(age), age FROM CUSTOMERS
GROUP BY age
HAVING COUNT(age) >= 2;
вы получите записи с описанием «сколько клиентов имеют соответствующий возраст», при условии, что число> = 2
SELECT age,count(*) FROM CUSTOMERS
GROUP BY age
HAVING COUNT(age) >= 2;
Вы группирование по 'age', и все же вы хотите отобразить' * '. Просто введите столбцы, которые вы хотите отобразить, и добавьте их в 'GROUP BY'. – waka