프로그래밍/SQL 문제풀이

프로그래머스 SQL 1단계 : 흉부외과 또는 일반외과 의사 목록 출력하기

pupu91 2023. 1. 5. 15:03
반응형

 

흉부외과 또는 일반외과 의사 목록 출력하기

 

 

 

 

 문제 

DOCTOR 테이블에서 진료과가 흉부외과(CS)이거나 일반외과(GS)인 의사의 이름, 의사ID, 진료과, 고용일자를 조회하는 SQL문을 작성해 주세요. 이때 결과는 고용일자를 기준으로 내림차순 정렬하고, 고용일자가 같다면 이름을 기준으로 오름차순 정렬해 주세요.

 

 

 

 DOCTOR 테이블 

- DR_NAME : 의사이름

- DR_ID : 의사 ID

- LCNS_NO : 면허번호

- HIRE_YMD : 고용일자

- MCDP_CD : 진료과 코드

- TLNO : 전화번호

 

 

 

 예시 및 주의사항 

 

반응형

 

 

💡 정답

- DATE_FORMAT 사용해서 고용일자 형식 바꾸고 별칭 지어주기

- WHERE절에 CS, GS 조건 설정, 이때 AND 사용 시 값 출력 불가 OR을 사용해주어야 함.

- 비교연산자 IN을 사용해서 조건 설정 가능하다. ( WHERE MCDP_CD IN ('CS', 'GS') 

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
반응형