[프로그래머스|SQL] 최댓값 구하기 (LIMIT과 MAX)

Joo·2024년 6월 21일

CS & Algorithm etc

목록 보기
16/33

문제 설명

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.


문제

가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요.


해설

🎈 MySQL

-- ORDER BY, LIMIT 사용
SELECT   datetime '시간'
FROM     animal_ins
ORDER BY 시간 desc LIMIT 1;

-- MAX 사용
SELECT max(datetime) '시간'
FROM animal_ins;

✔️ ORDER BY, LIMIT 조합을 사용하면, 자료 전체를 조회하고 그 중 하나를 골라내기 때문에 큰 테이블에서는 성능 저하 문제 발생함
✔️ 고로 MAX를 통한 계산이 더 효율적!
✔️ MySQL의 LIMIT과 Oracle의 FETCH FIRST n ROWS ONLY 기능 유사

profile
적당히 공부한 거 정리하는 곳

0개의 댓글