프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- 문제
- 코드 및 문제 풀이
SELECT A.NAME, A.DATETIME
FROM ANIMAL_INS AS A
LEFT JOIN ANIMAL_OUTS AS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.ANIMAL_ID IS NULL
ORDER BY DATETIME ASC LIMIT 0,3
- 입양을 가지 못한 동물을 조회하기 위해서 LEFT JOIN을 사용해서 ANIMAL_INS 테이블로 B 테이블을 합쳤습니다.
- 이 후 B 테이블의 ANIMAL_ID 가 NULL인 것들은 입양을 가지 못한 동물들의 ID이기 때문에 WHERE에서 조건을 명시했습니다.
- 문제에서 가장 오래 보호소에 있었던 동물 3마리를 조회하라고 해서 DATETIME을 오름차순으로 정렬했고, 제한을 두기 위해 LIMIT 조건을 사용했습니다.
- 0이 날짜가 오래된 동물이고, 그 뒤 3으로 제한을 두어 3마리만 조회되게 했습니다.
- LIMIT 조건
- LIMIT 조건은 ORDER BY, FROM 테이블명 뒤에 제한 조건을 명시할 수 있는 조건문입니다.
- LIMIT 시작할 위치, 가져올개수 와 같은 형식으로 사용됩니다.
'Coding Test > SQL 연습 문제' 카테고리의 다른 글
프로그래머스/MySQL - JOIN 07. 5월 식품들의 총매출 조회하기 (0) | 2023.01.17 |
---|---|
프로그래머스/MySQL - JOIN 06. 주량이 많은 아이스크림들 조회하기 (0) | 2023.01.17 |
프로그래머스/MySQL - JOIN 04. 없어진 기록 찾기 (0) | 2023.01.17 |
프로그래머스/MySQL - JOIN 03. 있었는데요 없었습니다 (0) | 2023.01.17 |
프로그래머스/MySQL - JOIN 02. 상품 별 오프라인 매출 구하기 (0) | 2023.01.17 |