코딩 공부/프로그래머스

[프로그래머스][SQL] GROUP BY 2. 동명 동물 수 찾기

김 정 환 2021. 3. 4. 21:39
반응형

programmers.co.kr/learn/courses/30/lessons/59041

 

코딩테스트 연습 - 동명 동물 수 찾기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

 

 

사고 과정

    - group by로 묶으면 이름별로 묶이게 된다. 이때 묶인 행이 2개 이상이 되어야 한다. 따라서 having을 이용하여 group by에 조건을 걸어준다.

    - Having : 집계함수를 가지고 조건을 만들 때 사용한다. where은 집계함수를 사용할 수 없다. 따라서 group by에 조건을 넣고 싶으면 having을 사용한다.

 

 

구현(C++)

1
2
3
4
5
select a.name, count(a.name)
from animal_ins as a
group by a.name
having count(a.name) > 1 and a.name is not null
order by a.name
cs

 

 

시행착오

반응형