SELECT item, SUM(sales) AS total_sales
FROM cafe_sales
GROUP BY item
having total_sales >= 15000;
ORDER BY total_sales DESC;
그래서 ROUP BY를 쓸 때 비집계 컬럼을 포함하는 것을 허용하지 않는다. 쿼리의 일관성과 정확성을 높이기 위해 도입된 규칙 중 하나.
그래서 집계 함수와 비집계 컬럼을 함께 사용하려면 GROUP BY가 꼭 필요!
COUNT()는 NULL도 세지만, SALES 컬럼에 NULL을 넣지 않는 식으로 하면 된다. 그렇다면 왜 와일드카드를 쓰는걸까? 그냥 컬럼 이름 써주면 되지 않나?
-> COUNT()이 성능이 더 좋다. 특정 컬럼의 값을 확인하지 않고 행 자체만 카운트하기 때문!
MIN, MAX는