728x90
HAVING
예를 들어서, 출력 된 결과 중에서 총 구매액이 1000이상인 회원에게만 어떤 조건을 주려한다면
아마 WHERE 절에 조건을 줘야하나 싶을거다.
SELECT mem_id, SUM(price*amount) "총 구매금액"
FROM buy
WHERE SUM(price*amount) > 1000;
GROUP BY mem_id;
그 생각대로 이렇게 하면 아마 바로 오류가 날 것이다.
이럴때 WHERE 대신 사용하는 것이 HAVING절이다.
HAVING은 WHERE과 비슷한 개념으로 조건을 제한하는 것이지만,
집계함수에 대해서 조건을 제한하는 것이라고 생각하면 된다.
그리고 HAVING은 GROUP BY절 다음에 나와야 한다.
SELECT mem_id, SUM(price*amount) "총 구매금액"
FROM buy
GROUP BY mem_id
HAVING SUM(price*amount) > 1000;
HAVING절은 이렇게 쓰는거다!
728x90
'DataBase > MySql' 카테고리의 다른 글
[MySql] TINYINT (0) | 2023.02.27 |
---|---|
[MySql] LIMIT (0) | 2023.02.24 |
[MySql] IN() (0) | 2023.02.24 |
[Mysql] DB기준 date로 insert하기 (2) | 2022.04.29 |
[MySQL] 중복값 쿼리 (4) | 2022.04.29 |