반응형
https://school.programmers.co.kr/learn/courses/30/lessons/132204
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
SELECT
A.APNT_NO AS APNT_NO,
P.PT_NAME AS PT_NAME,
P.PT_NO AS PT_NO,
A.MCDP_CD AS MCDP_CD,
D.DR_NAME AS DR_NAME,
A.APNT_YMD AS APNT_YMD
FROM APPOINTMENT A
JOIN PATIENT AS P ON P.PT_NO = A.PT_NO
JOIN DOCTOR AS D ON D.DR_ID = A.MDDR_ID
WHERE DATE_FORMAT(A.APNT_YMD, '%Y-%m-%d') = '2022-04-13'
AND A.MCDP_CD = 'CS'
AND A.APNT_CNCL_YN = 'N'
ORDER BY APNT_YMD ASC
JOIN문을 두번 사용하여 APPOINTMENT, PATIENT, DOCTOR 테이블 3개를 JOIN하였습니다.
- APPOINTMENT 테이블의 PT_NO와 PATIENT 테이블의 PT_NO 컬럼을 기준으로 JOIN
- DOCTOR 테이블의 DR_ID와 APPOINTMENT 테이블의 MDDR_ID 컬럼을 기준으로 JOIN
WHERE문에서 문제에서 요구한대로 조건을 걸어 처리하였습니다.
- 2022년 4월 13일
DATE_FORMAT(A.APNT_YMD, '%Y-%m-%d') = '2022-04-13'
- 취소되지 않은 흉부외과(CS)
A.MCDP_CD = 'CS'AND A.APNT_CNCL_YN = 'N'
마지막으로 ORDER BY문에서 진료예약일시(APNT_YMD)를 오름차순(ASC)정렬하여 출력하였습니다.
반응형
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 프로그래머스 입양 시각 구하기(2) MySQL (0) | 2022.12.09 |
---|---|
[코딩테스트] 프로그래머스 주문량이 많은 아이스크림들 조회하기 (0) | 2022.12.09 |
[코딩테스트] 프로그래머스 년, 월, 성별 별 상품 구매 회원 수 구하기 MySQL (0) | 2022.12.08 |
[코딩테스트] 프로그래머스 서울에 위치한 식당 목록 출력하기 MySQL (0) | 2022.12.07 |
[코딩테스트] 프로그래머스 우유와 요거트가 담긴 장바구니 MySQL (0) | 2022.12.07 |