활동/호기심

chatGPT와 함께 공부하는 GROUP BY와 HAVING절은 무조건 같이 와야 하는가?

ByeongJun 2023. 6. 7. 17:53
반응형

데이터를 그룹화하고 조건에 따라 필터링하는 데 사용되는 SQL절인 

GROUP BY절과 HAVING절 반드시 같이 와야하는지가 궁금했다.

 

결론부터 말하자면,

같이 올 필요는 없다.

 

 


GROUP BY

데이터를 특정 열 또는 열의 조합에 따라 그룹화

그룹화된 결과는 그룹 내에서 집계 함수를 사용하여 요약된 정보를 얻을 수 있다. 

 

 

 

HAVING

GROUP BY 절과 함께 사용되며, 그룹화된 결과에 대한 필터링 조건을 지정

집계 함수를 사용한 결과에 대한 조건을 지정하여 특정 그룹만 선택하거나 제외할 수 있다.

 

 

우선순위는 GROUP BY가 먼저이기 때문에 학과(department)별로 그룹 지어주고, 

평균 성적이 80보다 높은 학생들만 필터링 된다. 

 

 

 

 

GROUP BY만 사용할 경우
데이터를 그룹화하여 그룹 내에서 집계 함수를 사용하여 요약된 정보를 얻을 수 있다.
예를 들어, 학과 별로 학생 수를 세는 경우 GROUP BY만 사용하여 각 학과의 학생 수를 구할 수 있다.
HAVING만 사용할 경우
그룹화된 결과에 대한 필터링 조건을 지정하고자 할 때 사용할 수 있다.
이 경우, 전체 데이터를 그룹화하지는 않고, 집계 함수 결과에 대한 조건을 지정하여 특정 그룹만 선택할 수 있다.
예를 들어, 성적이 80보다 높은 학과만 선택하고자 할 때
반응형