[MySQL] GROUP BY, HAVING 이해하기

AI Scientist를 목표로!·2022년 12월 30일
0

GROUP BY절

  • 데이터를 원하는 그룹으로 나눔
  • 여러개의 행이 한개의 그룹으로 묶일 수 있을 떄 묶어서 집계한 결과를 조회
  • 나누고자 하는 그룹의 컬럼명을 SELECT절과 GROUP BY절 뒤에 추가

문제에서 동일한 회원이 동일한 상품을 재구매한 데이터를 구하기 위해서는 GROUP BY절을 사용해야 함


HAVIN절

  • GROUP의 필터링 조건을 주는 것

GROUP BY 사용시 사용하는 column이 SELECT 절에 그대로 들어가면 상관 없지만,
GROUP BY 요소로 사용하지 않는 column을 select절에 다이렉트로 들어갈 수 없기 때문에 집계함수(SUM,COUNT 등)을 사용해야 한다.

  • TRUE로평가되는 그룹들만 필터링 한 후 다음 논리적 프로세싱 단계로 전송

  • FALSE나 UNKNOW으로 평가되는 그룹들은 제거됨

  • HAVING절은 행들이 그룹핑된 다음에 처리되기 때문에 집계함수를 사용할 수 있음

profile
딥러닝 지식의 백지에서 깜지까지

0개의 댓글