본문 바로가기

SQL/프로그래머스

SQL 프로그래머스_4일차_2 GROUP BY , FIELD, COUNT

  1. 고양이와 개는 몇 마리 있을까

동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요.

 

SELECT ANIMAL_TYPE,COUNT(*) AS count -- 그룹바이한 후에 COUNT하면 자동으로 그룹별로 COUNT한다. 
FROM ANIMAL_INS A
GROUP BY ANIMAL_TYPE
HAVING ANIMAL_TYPE IN ('Cat','Dog')
ORDER BY FIELD(ANIMAL_TYPE, 'Cat','Dog')      -- 
-- 동물 종류가 CAT과 DOG 뿐이기 때문에  ORDER BY 1로 해도 되지만 
-- 만약 특정값을 위로 차순위로 하고 싶다면 FIELD(컬럼 , 1순위, 2순위 ,3순위 ) 
-- FIELD 값을 하나만 주면  값이 가장 밑으로 조회된다.