나만 알 수 없어서 만든 블로그

GROUP BY / HAVING 절 본문

Mysql/중급

GROUP BY / HAVING 절

코딩낙타 2020. 9. 21. 13:13

 

 

소중한 강좌다...

 

www.gurubee.net/lecture/1032

 

GROUP BY와 HAVING절

GROUP BY절 - GROUP BY 절은 데이터들을 원하는 그룹으로 나눌 수 있다. - 나누고자 하는 그룹의 컬럼명을 SELECT절과 GROUP BY절 뒤에 추가..

www.gurubee.net

 

 

 

그러나 이 둘의 차이점을 아직도 모르겠다면?

 

 

delirussum.tistory.com/141

 

[MY_SQL] where절과 having절의 차이

SQL구문을 처음 공부하던 당시, where절과 having절의 차이를 잘 몰랐는데요. 왜냐하면 두 구절이 비슷한 성격의 '조건절'이었기 때문이었죠. 그렇다면 where절과 having절이 어떤 차이가 있는지 살펴보

delirussum.tistory.com

 

1. WHERE

select * from 테이블명 where 조건절

항상 from뒤에 위치하고 조건에는 다양한 비교연산자들이 사용되어 구체적인 조건을 줄 수 있습니다.

 

2. HAVING

select * from 테이블명 group by 필드명 having 조건절

항상 group by뒤에 위치하고 where 조건절과 마찬가지로 조건에는 다양한 비교연산자들이 사용되어 구체적인 조건을 줄 수 있습니다.

 

 

where은 기본적인 조건절로서 우선적으로 모든 필드를 조건에 둘 수 있습니다.

하지만 having은 group by 된 이후 특정한 필드로 그룹화 되어진 새로운 테이블에 조건을 줄 수 있습니다.

예를 들어

1)mysql> select name, count(*) as cnt from where name='홍길동' 테이블 group by name;
2)mysql> select name, count(*) as cnt from 테이블 group by name;

1)의 경우는 where 조건절에 맞는 정보를 우선적으로 들고와서 group by로 그룹화 하고

2)의 경우는 group by로 그룹화 한 상태에서 having 조건절에 맞는 정보를 들고옵니다. 이때 having 조건절에 이용할 컬럼은 select 뒤에 반드시 명시 되어져야 합니다.



출처: https://delirussum.tistory.com/141 [jihoon Docs]

'Mysql > 중급' 카테고리의 다른 글

시간 비교 함수  (0) 2020.09.21