Home

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

Link

Tables

erDiagram
	PATIENT {
		PT_NO VARCHAR PK
		PT_NAME VARCHAR
		GEND_CD VARCHAR
		AGE INTEGER
		TLNO VARCHAR
	}
	DOCTOR {
		DR_NAME VARCHAR
		DR_ID VARCHAR PK
		LCNS_NO VARCHAR PK
		HIRE_YMD DATE
		MCDP_CD VARCHAR
		TLNO VARCHAR
	}
	APPOINTMENT {
		APNT_YMD TIMESTAMP
		APNT_NO INTEGER PK
		PT_NO VARCHAR FK
		MCDP_CD VARCHAR
		MDDR_ID VARCHAR FK
		APNT_CNCL_YN VARCHAR
		APNT_CNCL_YMD DATE
	}
	PATIENT ||--o{ APPOINTMENT : Reserve_Appointment
	DOCTOR ||--o{ APPOINTMENT : Work_Appointment
Mermaid
복사

Question

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

DataFlow

흉부외과 진료, 2022년 4월 13일, 취소X 진료 기준 정보 출력
예약번호 하나에 하나의 예약 -> 변경사항도 직시 반응

Answer

SELECT r.APNT_NO, p.PT_NAME, p.PT_NO, r.MCDP_CD, d.DR_NAME, r.APNT_YMD FROM ( SELECT * FROM APPOINTMENT WHERE MCDP_CD = "CS" AND APNT_CNCL_YN = "N" AND DATE_FORMAT(APNT_YMD, "%Y-%m-%d") = "2022-04-13" ) r JOIN PATIENT p ON r.PT_NO = p.PT_NO JOIN DOCTOR d ON r.MDDR_ID = d.DR_ID ORDER BY r.APNT_YMD ASC;
SQL
복사