프로그래머스_동명 동물 수 찾기

임정민·2023년 5월 19일

SQL 문제풀이

목록 보기
30/53
post-thumbnail

SQL 공부중 입니다. ✍✍✍

문제

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

풀이

SELECT NAME, CASE
    WHEN COUNT(NAME) >= 2 THEN COUNT(NAME)
    ELSE NULL
    END AS "COUNT"
    FROM ANIMAL_INS
    GROUP BY NAME
    HAVING COUNT IS NOT NULL
    ORDER BY NAME ASC;

두 번이상 쓰인 NAME 횟수를 조회하는 문제였습니다. NAME으로 GROUP BY (집계)하여 COUNT(NAME) 횟수를 계산하였습니다. 이때, CASE 구문을 활용하여 NULL 값을 제거하였습니다.✌✌✌

제가 작성한 풀이 이외에 아래와 같이

SELECT * 
FROM (SELECT  name,  COUNT(name) as COUNT 
      FROM ANIMAL_INS WHERE NAME IS NOT NULL 
GROUP BY name ORDER BY name) a
WHERE COUNT > 1

서브쿼리를 활용한 답안도 볼 수 있었습니다.🐥🐥🐥

감사합니다.

profile
https://github.com/min731

0개의 댓글