갭알 ☠️/SQL
[프로그래머스/SQL] 고양이와 개는 몇 마리 있을까 (MySQL, Oracle)
Niyaoh
2022. 8. 8. 15:37
https://school.programmers.co.kr/learn/courses/30/lessons/59040
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
ANIMAL_INS 테이블
NAME | TYPE | NULLABLE | INFO |
ANIMAL_ID | VARCHAR(N) | FALSE | 아이디 |
ANIMAL_TYPE | VARCHAR(N) | FALSE | 종류 |
DATETIME | DATETIME | FALSE | 보호 시작일 |
INTAKE_CONDITION | VARCHAR(N) | FALSE | 보호 시작 당시 상태 |
NAME | VARCHAR(N) | TRUE | 이름 |
SEX_UPON_INTAKE | VARHCAR(N) | FALSE | 성별 및 중성화 여부 |
[문제] 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요.
▼ 해석 및 풀이
MySQL & Oracle
/*
[테이블] : ANIMAL_INS
[컬럼명] : ANIMAL_TYPE, 열 이름 'count'
[조건] : ANIMAL_TYPE을 GROUP BY로 같은 값끼리 묶고 개수를 세어 조회. 단, 고양이가 먼저 조회되어야 함.
GROUP BY : 같은 값끼리 그룹화 시킴.
(ORDER BY는 GROUP BY보다 후순위로 실행됨)
*/
SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE ASC;