💡 "테이블을 여러 개 연결지어 데이터를 읽어올 때 아주 유용하구나!"
사실 그 동안 GROUP BY
를 사용해볼 기회가 없다보니 어디에 이 절이 유용한지 머릿속에서 잘 그려지지 않았었습니다. 근데 두 개 이상의 테이블을 합쳐서 데이터를 조회해보니 GROUP BY
의 유무에 따라 데이터 조회 결과물이 확연히 달라지더군요. 딱 필요한 부분만 가져올 수 있어서 가독성이 좋은 것은 물론, 필요치 않은 데이터들은 쳐냄으로써 불러오는 데이터양을 줄일 수 있다는 장점이 있는 것 같습니다.
GROUP BY
를 공부하면서 WHERE
과 HAVING
의 차이점도 알게 됐는데, 둘을 잘 활용하면 보다 더 구체적으로 데이터를 조회할 수 있겠다는 생각을 했습니다.
WHERE
과 HAVING
의 차이는 GROUP BY
의 영향을 받는가 아닌가에 따라 있습니다.
WHERE
은 GROUP BY
로 행들이 그룹화되기 전에 단일 행들을 필터링 해줍니다. 이 때문에 보통 쿼리문에서도 WHERE
이 GROUP BY
절 전에 작성하는 것을 볼 수 있지요.
반면, HAVING
은 그룹화를 거친 행들을 필터링해줍니다. 그래서 HAVING
절은 보통 GROUP B Y
뒤에 작성되는 것을 볼 수 있습니다.