
문제
https://school.programmers.co.kr/learn/courses/30/lessons/132204
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 설명
- PATIENT, DOCTOR 그리고 APPOINTMENT 테이블에서 2022년 4월 13일 취소되지 않은 흉부외과(CS) 진료 예약 내역을 조회하는 SQL문을 작성
- 진료예약번호, 환자이름, 환자번호, 진료과코드, 의사이름, 진료예약일시 항목이 출력되도록 작성
- 결과는 진료예약일시를 기준으로 오름차순 정렬
정답 코드
SELECT
A.APNT_NO,
P.PT_NAME,
P.PT_NO,
A.MCDP_CD,
D.DR_NAME,
A.APNT_YMD
FROM APPOINTMENT A
JOIN PATIENT P ON A.PT_NO = P.PT_NO
JOIN DOCTOR D ON A.MDDR_ID = D.DR_ID
WHERE
A.MCDP_CD = 'CS'
AND A.APNT_CNCL_YN = 'N'
AND DATE(A.APNT_YMD) = '2022-04-13'
ORDER BY A.APNT_YMD
코드 설명
FROM APPOINTMENT A
JOIN PATIENT P ON A.PT_NO = P.PT_NO
JOIN DOCTOR D ON A.MDDR_ID = D.DR_ID
- 세 테이블을 한 번에 JOIN 하는 방식
- APPOINTMENT을 중심으로 환자와 의사 테이블을 연결
'코딩 테스트 연습 > [프로그래머스][리트코드] MySQL' 카테고리의 다른 글
| [LV.4] GROUP BY > 년, 월, 성별 별 상품 구매 회원 수 구하기 (0) | 2025.06.27 |
|---|---|
| [LV.4] GROUP BY > 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 ⭐ (2) | 2025.06.26 |
| [LV.4] String, Date > 조건에 부합하는 중고거래 상태 조회하기 (0) | 2025.06.24 |
| [LV.4] String, Date > 특정 옵션이 포함된 자동차 리스트 구하기 (3) | 2025.06.23 |
| [LV.4] String, Date > 조건에 맞는 사용자 정보 조회하기 (1) | 2025.06.20 |