SQL

[프로그래머스] MySQL - 고양이와 개는 몇 마리 있을까

주스 JUICE 2022. 10. 4. 09:55
728x90

코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 | 프로그래머스 스쿨 (programmers.co.kr)

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

NAMETYPENULLABLE

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 VARCHAR(N) FALSE

 

ANIMAL_IDANIMAL_TYPEDATETIMEINTAKE_CONDITIONNAMESEX_UPON_INTAKE

A373219 Cat 2014-07-29 11:43:00 Normal Ella Spayed Female
A377750 Dog 2017-10-25 17:17:00 Normal Lucy Spayed Female
A354540 Cat 2014-12-11 11:48:00 Normal Tux Neutered Male

 

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

 

SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) FROM ANIMAL_INS
GROUP BY ANIMAL_TYPE
ORDER BY ANIMAL_TYPE ASC

 

ANIMAL_TYPE                                                                                                    count

Cat 2
Dog 1

 

결과가 다음과 같은 형태로 나와야 하므로,

1. SELECT 절에는 ANIMAL_TYPE과 COUNT(ANIMAL_TYPE)을 써준다

 

이때, COUNT(*)를 써줘도 됨

(* = 전체)

 

2. 해당 테이블에는 고양이, 개에 대한 데이터만 존재하므로

GROUP BY로 각 ANIMAL_TYPE을 묶어 개, 고양이를 그룹지어준다

 

3. 고양이를 개보다 먼저 조회해달라고 했으므로

ANIMAL_TYPE을 알파벳 순서대로 나열하는 오름차순 ASC를 써준다(ASC 생략 가능)

 

 

 

 

결과

 

728x90