본문 바로가기
Coding Test/SQL Coding Test

[프로그래머스 / SQL] - 12세 이하인 여자 환자 목록 출력하기

by nam_ji 2024. 1. 20.

12세 이하인 여자 환자 목록 출력하기

문제

  • 종합병원에 등록된 환장 정보를 담은 patient 테이블이 있습니다.
  • patient 테이블에서
    1. 테이블에서 12세 이하인
    2. 여자 환자
    3. 환자 이름
    4. 환자 번호
    5. 성별 코드
    6. 나이
    7. 전화번호를 조회하는 문제입니다.
    8. 이때 전화번호가 없을 경우 'NONE'으로 처리하고 
    9. 결과는 나이 기준 내림차순, 나이가 같다면 환자이름 기준 오름차순 정렬하는 문제입니다.


프로그래머스 코드

  • SELECT를 이용하여 조회할 컬럼들을 작성합니다.
  • 여기서 전화번호가 없는 경우를 IFNULL을 이용합니다.
    • IFNULL(NULL값을 찾아 변경할 컬럼명, NULL 값을 찾으면 대체할 값)
  • FROM을 이용해 조회할 컬럼의 테이블을 지정합니다.
  • WHERE절을 이용하여 나이의 범위를 지정해주고 성별이 여자인 경우의 조건을 지정해줍니다.
  • ORDER BY를 이용하여 나이 먼저 내림차순 정렬하고 뒤로 환자이름 기준 오름차순 정렬될 수 있도록 해줍니다.
    • DESC : 내림차순, ASC : 오름차순
-- 코드를 입력하세요
SELECT
    pt_name,
    pt_no,
    gend_cd,
    age,
    IFNULL(tlno, 'NONE')
FROM patient
WHERE age < 13 AND gend_cd = 'W'
ORDER BY age DESC, pt_name ASC;