Lv2 - 동명 동물 수 찾기

2025. 7. 19. 22:27·CODING TEST/MySQL

📌 문제 정보

- 문제 이름 : 프로그래머스 - (GROUP BY) 동명 동물 수 찾기

- 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/59041

 

 

 

📌 문제 요약

- ANIMAL_INS 테이블 : ANIMAL_ID(동물의 아이디), ANIMAL_TYPE(생물 종), DATETIME(보호 시작일), INTAKE_CONDITION(보호 시작 시 상태), NAME(이름), SEX_UPON_INTAKE(성별 및 중성화 여부)

- 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요.

 

예시)

ANIMAL_ID  ANIMAL_TYPE  DATETIME  INTAKE_CONDITION  NAME  SEX_UPON_INTAKE
A396810  Dog  2016-08-22 16:13:00 Injured  Raven  Spayed Female
A377750  Dog  2017-10-25 17:17:00 Normal  Lucy  Spayed Female
A355688  Dog  2014-01-26 13:48:00 Normal  Shadow  Neutered Male
A399421 Dog  2015-08-25 14:08:00 Normal  Lucy  Spayed Female
A400680  Dog  2017-06-17 13:29:00 Normal  Lucy  Spayed Female
A410668  Cat  2015-11-19 13:41:00 Normal  Raven  Spayed Female

- Raven 2번, Lucy 3번, Shadow 1

 

출력)

NAME COUNT
Lucy 3
Raven 2

 

 

 

📌 내 풀이 및 코드

SELECT NAME, COUNT(*) AS COUNT 
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
GROUP BY NAME
HAVING COUNT(*) >= 2
ORDER BY NAME;

- GROUP BY, HAVING 문법 까먹었음.. 두 문단 빼고는 똑같이 적었으나 핵심 2개를 틀림.

- 이름이 같은 동물들끼리 그룹으루 묶어야 함. -> 그래야 몇 번 나왔는지 셀 수 있으니까.

- HAVING으로 두 번 이상 나온 이름만 골라야 함. (GROUP BY 후 조건을 줄 때 사용)

 

 

 

📌 새로 배운 문법

<-- 이번 문제에서 새로 배운 Java 문법 정리 -->

** GROUP BY **

- 같은 값을 가진 행들을 묶음. 

 

** HAVING 절 **

- 그룹핑한 결과에 조건을 걸 때 사용 (WHERE이 행에 조건을, HAVING이 그룹에 조건을 건다고 보면 됨.)

SELECT 그룹기준, COUNT(*) AS 개수	-- 컬럼, 집계함수
FROM 테이블
WHERE ...  -- 그룹 전 조건
GROUP BY 그룹기준컬럼
HAVING 조건 -- 그룹 후 조건
ORDER BY ...;

'CODING TEST > MySQL' 카테고리의 다른 글

Lv2 - 카테고리 별 상품 개수 구하기  (0) 2025.07.20
Lv2 - 이름에 el이 들어가는 동물 찾기  (0) 2025.07.20
Lv1 - 조건에 부합하는 중고거래 댓글 조회하기  (0) 2025.07.17
Lv1 - 특정 형질을 가지는 대장균 찾기  (0) 2025.07.17
Lv1 - 과일로 만든 아이스크림 고르기  (0) 2025.07.17
'CODING TEST/MySQL' 카테고리의 다른 글
  • Lv2 - 카테고리 별 상품 개수 구하기
  • Lv2 - 이름에 el이 들어가는 동물 찾기
  • Lv1 - 조건에 부합하는 중고거래 댓글 조회하기
  • Lv1 - 특정 형질을 가지는 대장균 찾기
iamyuunzo
iamyuunzo
https://github.com/iamyuunzo
  • iamyuunzo
    iamyuunzo
    iamyuunzo
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • Study (5)
        • App Developer (0)
        • Algorithm study (0)
        • Google AI Essentials (3)
      • Project (3)
        • 감행 (3)
        • Tokkit (0)
        • 다시, 봄 (0)
        • Clone Coding (0)
      • 자격증 모음 (5)
        • AWS Certification (1)
        • 정보처리기사 (0)
        • 빅데이터분석기사 (1)
        • TOEIC Speaking (3)
      • CODING TEST (79)
        • baekjoon (26)
        • programmers (20)
        • MySQL (31)
        • COS Pro (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    CLF-C02
    프로젝트 리팩토링
    프로그래머스
    COS Pro
    우리fis아카데미
    AWS Certified Cloud Practitioner
    우리 fisa
    toeic speaking
    baekjoon
    회고
    감행
    java
    Programmers
    회고록
    백준
    클라우드서비스개발
    우리fisa
    AWS Certification
    토익 스피킹
    SQL
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
iamyuunzo
Lv2 - 동명 동물 수 찾기
상단으로

티스토리툴바