# 1. 그룹화

GROUP BY 명령어를 통해 특정 컬럼을 기준으로 그룹화 할 수 있습니다.

그룹화를 하면 조회된 데이터를 통계를 내기 위한 집계함수( avg, sum 등.. )를 사용하기에 용이해집니다.

 

# Group By를 통해 컬럼의 값이 같은 것 끼리 하나로 묶어준다 ==> ANIMAL_TYPE으로 묶어서 고양이와 강아지가 몇마리인지 정리됨

# 이때, SELECT ANIMAL_TYPE, Count(ANIMAL_TYPE) as count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE  만 해도 정답이다 왜냐하면 사전순으로 조회가 되기때문에 그렇다. 그러나 문제에 맞게 구현을 하려면 ORDER BY CASE 를 사용해주면 된다.

1
2
3
4
5
6
7
-- 고양이와 개는 몇 마리 있을까
SELECT ANIMAL_TYPE, Count(ANIMAL_TYPE) as count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE 
ORDER BY 
CASE ANIMAL_TYPE 
    WHEN 'Cat' THEN 1
    WHEN 'Dog' THEN 2
END
cs

+ Recent posts