#문제 간단 정리
#문제 해결 방법
- 진료과 필터링:
- WHERE 절을 사용하여 MCDP_CD가 'CS'(흉부외과) 또는 'GS'(일반외과)인 의사들만 선택합니다.
- 이는 문제에서 요구한 "진료과가 흉부외과 또는 일반외과인 의사"를 조회하기 위한 것입니다.
- WHERE 절을 사용하여 MCDP_CD가 'CS'(흉부외과) 또는 'GS'(일반외과)인 의사들만 선택합니다.
- 필요한 컬럼 선택 및 날짜 형식 지정:
- SELECT 절에서 의사의 이름(DR_NAME), ID(DR_ID), 진료과 코드(MCDP_CD), 고용일자(HIRE_YMD)를 선택합니다.
- HIRE_YMD는 DATE_FORMAT 함수를 사용하여 'YYYY-MM-DD' 형식으로 변환합니다.
- 이는 출력되는 날짜가 예시와 동일한 포맷을 가지도록 하기 위함입니다.
- 결과 정렬:
- ORDER BY 절을 사용하여 결과를 정렬합니다.
- 먼저 HIRE_YMD DESC로 고용일자를 기준으로 내림차순 정렬하여 최근에 고용된 의사가 먼저 나오도록 합니다.
- 고용일자가 같은 경우 DR_NAME ASC로 의사 이름을 기준으로 오름차순 정렬합니다.
- ORDER BY 절을 사용하여 결과를 정렬합니다.
#전체 코드
SELECT
DR_NAME,DR_ID,MCDP_CD,DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') AS HIRE_YMD
FROM
DOCTOR
WHERE MCDP_CD = 'CS' OR MCDP_CD = 'GS'
ORDER BY HIRE_YMD DESC,DR_NAME ASC;
'[프로그래머스] > lv.1' 카테고리의 다른 글
[프로그래머스] 평균 일일 대여 요금 구하기[C++][lv.1] (0) | 2024.09.18 |
---|---|
[프로그래머스] 가장 많이 받은 선물 [C++][lv.1] (0) | 2024.01.17 |