본문 바로가기

DB/Programmers SQL Kit

[My_SQL] Lv.4 취소되지 않은 진료 예약 조회하기

문제

 

 

조인 두 번만 하면 되는 문제이다.

우선 APPOINTMENT 테이블에서 2022년 4월 13일 진료기록 중 예약이 취소되지 않은 CS(흉부외과) 데이터만 도출했다.

이후 해당 테이블에 PATIENT, DOCTOR 테이블을 각각의 ID를 기준으로 조인해주고 출력했다.

 

코드

WITH NOT_CANCEL_CS_AT413 AS (
    SELECT *
    FROM APPOINTMENT
    WHERE (APNT_CNCL_YN = 'N' AND 
          DATE_FORMAT(APNT_YMD, '%Y-%m-%d') = DATE_FORMAT('20220413', '%Y-%m-%d')) AND
          MCDP_CD = 'CS'
)

SELECT DISTINCT cna.APNT_NO, p.PT_NAME, p.PT_NO, cna.MCDP_CD, d.DR_NAME, cna.APNT_YMD
FROM NOT_CANCEL_CS_AT413 cna JOIN PATIENT p ON cna.PT_NO = p.PT_NO
                          JOIN DOCTOR d ON cna.MDDR_ID = d.DR_ID
ORDER BY 6 ASC;