Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- 프로그래머스
- kaggle
- dataframe
- 시각화
- 파이썬
- 코테
- EDA
- 데이터전처리
- SQL
- machinelearning
- data science
- 연산자
- 데이터구조
- 머신러닝
- pandas
- mysql
- numpy
- 전처리
- 코딩테스트
- code
- Data Analysis
- 불리언
- 데이터과학
- 아마존
- 데이터 전처리
- 데이터분석
- Python
- get_dummies
- 데이터사이언스
- 캐글
Archives
- Today
- Total
Road to Data Scientist
[프로그래머스] 오랜 기간 보호한 동물(1) Lv.3 본문
오랜 기간 보호한 동물(1)
ANIMAL_INS 테이블

ANIMAL_OUTS 테이블

문제
아직 입양을 못 간 동물 중, 가장 오래 보호소에 있었던 동물 3마리의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 시작일 순으로 조회해야 합니다.
정답예시

코드
SELECT A.NAME, A.DATETIME
FROM ANIMAL_INS A
LEFT JOIN ANIMAL_OUTS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.DATETIME IS NULL
ORDER BY A.DATETIME LIMIT 3;
설명
1. 보호소에 들어온 동물 기준으로 입양을 가지 못한 아이들을 찾아야 하기 때문에, ANIMAL_INS (A) 기준으로 ANIMAL_OUTS (B) 와 LEFT JOIN
2. 외래키 ANIMAL_ID 로 연결 : ON A.ANIMAL_ID = B.ANIMAL_ID
3. 연결된 결과 중 입양을 가지 못했다면 B.DATETIME이 존재하지 않을 것이므로 조건 걸어주기 : WHERE B.DATETIME IS NULL
4. 보호 시작일 순(오래된 순)으로 조회해야 하므로 : ORDER BY A.DATETIME
5. 3마리 조회 : LIMIT 3
출처
https://school.programmers.co.kr/learn/courses/30/lessons/59044
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
'코딩 테스트 > SQL' 카테고리의 다른 글
| [프로그래머스] 조건에 맞는 사용자와 총 거래금액 조회하기 Lv.3 (1) | 2025.11.22 |
|---|---|
| [프로그래머스] 조건별로 분류하여 주문상태 출력하기 Lv.3 (0) | 2025.11.14 |
| [프로그래머스] 카테고리 별 도서 판매량 집계하기 Lv.3 (0) | 2025.11.02 |
| [프로그래머스] 노선 별 평균 역사이 거리 조회하기 Lv.2 (1) | 2025.10.26 |
| [프로그래머스] 부모의 형질을 모두 가지는 대장균 찾기 Lv.2 (0) | 2025.02.16 |