반응형
GROUP BY
특정한 열을 그룹화하여 조회한다.
* 삼성전자에서 교육을 할 만큼 실무에서 많이 쓰인다.
▶ 기본 문법
SELECT * FROM 테이블명 GROUP BY 열1, 열2...
▶ 그룹화 후 조건 처리
SELECT * FROM 테이블명 GROUP BY 열1, 열2... HAVING 조건
예제
▶ 상품의 합계를 구한다.
SELECT * FROM sample51;
+------+------+----------+
| no | name | quantity |
+------+------+----------+
| 1 | A | 1 |
| 2 | A | 2 |
| 3 | B | 10 |
| 4 | C | 3 |
| 5 | NULL | NULL |
+------+------+----------+
SELECT name, SUM(quantity)'상품 합계' FROM sample51 GROUP BY name;
+------+---------------+
| name | 상품 합계 |
+------+---------------+
| A | 3 |
| B | 10 |
| C | 3 |
| NULL | NULL |
+------+---------------+
▶ HAVING구문 사용 예.
SELECT name, COUNT(name) FROM sample51 GROUP BY name HAVING COUNT(name) = 1;
+------+-------------+
| name | COUNT(name) |
+------+-------------+
| B | 1 |
| C | 1 |
+------+-------------+
▶ ORDER BY 구문 추가.
SELECT name, COUNT(name), SUM(quantity) FROM sample51 GROUP BY name ORDER BY SUM(quantity)DESC ;
+------+-------------+---------------+
| name | COUNT(name) | SUM(quantity) |
+------+-------------+---------------+
| B | 1 | 10 |
| A | 2 | 3 |
| C | 1 | 3 |
| NULL | 0 | NULL |
+------+-------------+---------------+
반응형
'SQL' 카테고리의 다른 글
[MySQL] VIEW (0) | 2022.09.20 |
---|---|
[MySQL] INDEX (0) | 2022.09.19 |
[MySQL] 데이터베이스 객체, 스키마 (0) | 2022.09.17 |
[MySQL] SubQuery (0) | 2022.09.17 |
[MySQL] 테이블 추가, 삭제 (0) | 2022.09.17 |