프로그래머스 풀이
[프로그래머스 SQL] 취소되지 않은 진료 예약 조회하기 (ORACLE)
홀든콜필드
2025. 2. 18. 00:12
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/132204?language=oracle
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
3개의 테이블을 조인하고 날짜를 조회하면 되는 문제
날짜를 처리하는 것 외에는 어렵지 않았다.
오라클 문법으론
날짜에 TRUNC(시각컬럼)을 해주면 시간은 무시하고 '2025-02-18' 형태로 잡을 수 있다.
SELECT A.APNT_NO, PT_NAME, PATIENT.PT_NO, A.MCDP_CD, A.DR_NAME, A.APNT_YMD FROM
(
SELECT
APPOINTMENT.APNT_YMD,
APPOINTMENT.APNT_NO,
APPOINTMENT.PT_NO,
APPOINTMENT.MCDP_CD,
DOCTOR.DR_NAME
FROM APPOINTMENT, DOCTOR
WHERE APPOINTMENT.MDDR_ID = DOCTOR.DR_ID
AND APPOINTMENT.MCDP_CD = 'CS'
AND APPOINTMENT.APNT_CNCL_YN = 'N'
) A, PATIENT
WHERE A.PT_NO = PATIENT.PT_NO
AND TRUNC(A.APNT_YMD) = TO_DATE('2022-04-13', 'YYYY-MM-DD')
ORDER BY A.APNT_YMD;