개발노트

GROUP BY 본문

자격증/SQLD

GROUP BY

dev? 2024. 11. 5. 21:52
반응형
-- GROUP_NAME이 같은 것끼리 그룹화
-- 같은 GROUP_NAME을 가진 것 끼리 평균, 가장큰값, 작은값, 합계를 구함

SELECT GROUP_NAME,
       COUNT(*),
       ROUND(AVG(HEIGHT),2),
       MAX(HEIGHT),
       MIN(HEIGHT),
       SUM(HEIGHT)
FROM ARTIST
GROUP BY GROUP_NAME;

 


GROUP BY에 2개 이상의 컬럼 지정 가능

SELECT GROUP_NAME,
       BIRTH_YEAR,
       COUNT(*),
       ROUND(AVG(HEIGHT),2),
       MAX(HEIGHT),
       MIN(HEIGHT),
       SUM(HEIGHT)
FROM ARTIST
GROUP BY GROUP_NAME,BIRTH_YEAR;

에스파에서 2000년생인 (유일한) 그룹
에스파에서 2001년생인 (유일한) 그룹

GROUP BY에 지정한 2개의 컬럼(조건)에 일치하는 각각의 유일한 그룹

 


GROUP BY는 DISTINCT 한것과 같다

SELECT GROUP_NAME, BIRTH_YEAR
FROM ARTIST
GROUP BY GROUP_NAME, BIRTH_YEAR;

SELECT DISTINCT GROUP_NAME, BIRTH_YEAR
FROM ARTIST;
결과가 일치 한다!

 


[제약사항] 그룹화하지도 집계하지도 않은 컬럼은 조회할수 없음

오류가 발생한다.
반응형

'자격증 > SQLD' 카테고리의 다른 글

Non Equi JOIN, =이 아닌 조건으로 조인하기  (0) 2024.11.11
EQUI JOIN  (0) 2024.11.08
ORDER BY  (0) 2024.11.07
HAVING  (0) 2024.11.06
집계함수  (0) 2024.11.04