부제:
동명 동물 수 찾기, 레벨 1
1. 문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/59041
2. 정답 코드:
SELECT
NAME,
COUNT(NAME) AS COUNT
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
GROUP BY NAME
HAVING COUNT(NAME) >=2
ORDER BY NAME;
3. 오류 상황:
SELECT
DISTINCT NAME AS NAME,
COUNT(DISTINCT NAME) AS COUNT
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
ORDER BY NAME;
=> 이름 중 두 번 이상 쓰인 이름이 출력되게 해야하는 조건 미기재.
=> DISTINCT 오용.
4. 시도 방법: DISTINCT 모두 제거 후 HAVING 절로 두 번 이상 쓰인 이름의 조건을 적용
5. 최종 문제 해결 방법: SELECT문에서 DISTINCT 모두 제거 후 GROUP BY문, HAVING 문 추가 후 해결
'SQL 알고리즘 코드카타' 카테고리의 다른 글
| SQL 알고리즘 코드카타 5일차(4) 26.01.03(토) (0) | 2026.01.03 |
|---|---|
| SQL 알고리즘 코드카타 5일차(3) 26.01.03(토) (0) | 2026.01.03 |
| SQL 알고리즘 코드카타 5일차(1) 26.01.03(토) (0) | 2026.01.03 |
| SQL 알고리즘 코드카타 4일차 26.01.02(금) (0) | 2026.01.02 |
| SQL 알고리즘 코드카타 3일차 26.01.01(목) (보충) (0) | 2026.01.02 |