susinlee 님의 블로그

취소되지 않은 진료 예약 조회하기 본문

코드카타/SQL, Pandas

취소되지 않은 진료 예약 조회하기

susinlee 2024. 12. 13. 09:40

[문제]
PATIENT(P)DOCTOR(D) 그리고 APPOINTMENT(A) 테이블에서 2022년 4월 13일 취소되지 않은 흉부외과(CS) 진료 예약 내역을 조회하는 SQL문을 작성해주세요. 진료예약번호, 환자이름, 환자번호, 진료과코드, 의사이름, 진료예약일시 항목이 출력되도록 작성해주세요. 결과는 진료예약일시를 기준으로 오름차순 정렬해주세요.


[단계별 풀이]
1. 세 테이블을 A.MDDR_ID = D.DR_ID 와  A.PT_NO =P.PT_NO  기준으로 JOIN

2. 예약 일시가 2022-04-13이면서 A테이블의 진료과 코드가 CS이면서 예약 취소 여부가 N인 행들만 필터링

3. 진료예약번호, 환자이름, 환자번호, 진료과코드, 의사이름, 진료예약일시를 조회

4. 진료예약일시 기준으로 오름차순 정렬


[정답]

SELECT A.APNT_NO,
       P.PT_NAME,
       P.PT_NO,
       A.MCDP_CD,
       D.DR_NAME,
       A.APNT_YMD
FROM APPOINTMENT A
JOIN 
    DOCTOR D ON A.MDDR_ID = D.DR_ID
JOIN 
    PATIENT P ON A.PT_NO = P.PT_NO
WHERE 
    A.APNT_YMD LIKE '2022-04-13%'
AND A.MCDP_CD = 'CS'
AND A.APNT_CNCL_YN = 'N'
ORDER BY A.APNT_YMD