[프로그래머스 SQL] 동명 동물 수 찾기

kiki·2024년 1월 8일
0

프로그래머스

목록 보기
49/79

문제 링크

https://school.programmers.co.kr/learn/courses/30/lessons/59041

문제 설명

  • 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회
  • 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회

1차 시도 - 실패!

SELECT NAME, COUNT(NAME) AS count FROM ANIMAL_INS
	WHERE COUNT(NAME)>1
    GROUP BY NAME
    ORDER BY NAME;

COUNT(집계함수)는 그룹화 후에 사용할 수 있는건데,
WHERE는 그룹화 이전 조건절이니 오류가 났다.

2차 시도 - 통과

SELECT NAME, COUNT(NAME) AS count FROM ANIMAL_INS
    GROUP BY NAME
    HAVING COUNT(NAME)>1
    ORDER BY NAME;

그래서 그룹화 이후 사용하는 조건절인 HAVING을 사용했다!

정리

  • HAVING: WHERE은 그룹화 이전 조건, HAVING은 그룹화 후 조건!

0개의 댓글