SQL 알고리즘 코드카타

SQL 알고리즘 코드카타 5일차(4) 26.01.03(토)

nom_de_plume 2026. 1. 3. 23:44

부제:

상위 n개 레코드, 레벨 1

 

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

2. 정답 코드:

SELECT
    NAME
FROM ANIMAL_INS
ORDER BY DATETIME
LIMIT 1

3. 오류 상황:

SELECT
    NAME
FROM ANIMAL_INS
HAVING MIN(DATETIME);

=> 가장 먼저 들어온 동물 이름이 아닌 다른 동물 이름 출력되는 오류 발생

4. 시도 방법: HAVING절은 그룹화된 데이터 전체에 조건을 걸 때 사용해야 하기에 삭제

5. 최종 문제 해결 방법: HAVING절 제거 후 ORDER BY절로 DATETIME으로 즉, 들어온 순서로 정렬 후 LIMIT 1을 통해 가장 먼저 들어온 동물만 출력되게 제한을 걸어줌.