프로그래머스
#프로그래머스_SQL_Group By - 고양이와 개는 몇 마리 있을까
ukyonge
2020. 4. 23. 19:50
# 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 |