티스토리 뷰
| 문제
programmers.co.kr/learn/courses/30/lessons/59405
코딩테스트 연습 - 상위 n개 레코드
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디
programmers.co.kr
| 코드
SELECT NAME
FROM (SELECT * FROM ANIMAL_INS ORDER BY DATETIME)
WHERE ROWNUM <= 1
;
내가 짠 언어는 오라클이다. mysql은 간단하게 limit 써서 해결할 수 있는데, 오라클은 그런게 없다.
보호시작일로 정렬한 테이블을 인라인뷰(FROM 절에 들어간 서브쿼리)로 넣는다.
인라인뷰에서 상위 첫번째 데이터만 뽑으면 되니까 ROWNUM <= 1 을 조건으로 건다.
ROWNUM = 1로 해도되긴하는데 성능 상 <= 로 거는게 좋다고 한다.
'코테 > SQL' 카테고리의 다른 글
[프로그래머스/SQL/SUM, MAX, MIN] 최솟값 구하기 (0) | 2020.09.28 |
---|---|
[프로그래머스/SQL/SUM, MAX, MIN] 최댓값 구하기 (0) | 2020.09.28 |
[프로그래머스/SQL/SELECT] 여러 기준으로 정렬하기 (0) | 2020.09.27 |
[프로그래머스/SQL/SELECT] 동물의 아이디와 이름 (0) | 2020.09.26 |
[프로그래머스/SQL/SELECT] 어린 동물 찾기 (0) | 2020.09.25 |
댓글