문제 설명
보호소에 가장 먼저 들어온 동물의 이름을 조회한다.
문제 풀이
- SELECT문에 동물의 이름(NAME)을 적는다.
- FROM절에 보호소 테이블인 ANIMAL_INS를 적는다.
- 가장 먼저 들어온 동물을 조회하는 조건이 있으므로, 보호시작일(DATETIME)이 가장 오래된 것을 찾으면 된다. 이때, DATETIME이 최소인 것을 검색하면 되는데 WHERE절에서는 집계함수를 사용할 수 없다.
- 따라서 서브 쿼리를 이용한다. 서브 쿼리는 하나의 쿼리문에 포함되어 있는 또 다른 쿼리문이다. 사용하는 방법은 WHERE절에서 칼럼명 뒤에 IN을 적어주고 괄호 안에 다른 쿼리문을 적는다. IN은 괄호 내에서 일치하는 것이 있으면 TRUE로 평가된다.
Solution
SELECT NAME FROM ANIMAL_INS WHERE DATETIME IN(SELECT MIN(DATETIME) FROM ANIMAL_INS);
※WHERE 절에 IN 대신 '='로도 가능하다.
'프로그래머스 코딩테스트 > SQL 고득점 kit' 카테고리의 다른 글
프로그래머스 입양 시각 구하기(1) (GROUP BY/Level 2) (0) | 2022.08.05 |
---|---|
Programmers 최댓값 구하기 (SUM,MAX,MIN/Level 1) (0) | 2022.06.26 |
Programmers 여러 기준으로 정렬하기 (SELECT/Level 1) (0) | 2022.06.25 |
프로그래머스 동물의 아이디와 이름 (SELECT/Level 1) (0) | 2022.06.25 |
프로그래머스 어린 동물 찾기 (SELECT/Level 1) (0) | 2022.06.25 |