Chef.Yeon
Code Cook
Chef.Yeon
전체 방문자
오늘
어제
  • 분류 전체보기 (230)
    • 게임 개발 (1)
      • Unity (1)
    • Android (27)
      • Kotlin (19)
      • 우아한테크코스 5기 (4)
    • Language (11)
      • 파이썬 (3)
      • Java (7)
    • DB (2)
      • SQL (16)
    • Spring (25)
    • 코딩테스트 (56)
    • Git (1)
    • TIL (85)
    • DevOps (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 안드로이드
  • 문자열
  • java
  • kotlin
  • 프로그래머스
  • Android
  • 코틀린
  • 코딩테스트
  • 코틀린 인 액션
  • Wil
  • 백준
  • MariaDB
  • kibana
  • 파이썬
  • 레포지토리
  • webflux
  • elasticsearch
  • Docker
  • 에라토스테네스의 체
  • 우아한테크코스
  • rsocket
  • 프리코스
  • SQL
  • grafana
  • ec2
  • 내림차순
  • enum
  • 다이나믹 프로그래밍
  • spring
  • til

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Chef.Yeon

Code Cook

DB/SQL

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

2023. 3. 22. 04:03

문제 설명

다음은 종합병원에 등록된 환자정보를 담은 PATIENT 테이블입니다. PATIENT 테이블은 다음과 같으며 PT_NO, PT_NAME, GEND_CD, AGE, TLNO는 각각 환자번호, 환자이름, 성별코드, 나이, 전화번호를 의미합니다.


문제

PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요. 이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고 결과는 나이를 기준으로 내림차순 정렬하고, 나이 같다면 환자이름을 기준으로 오름차순 정렬해주세요.


내 풀이

WHERE와 AND절로 12세 이하의 여자 환자 데이터를 필터링하고, 전화번호가 NULL인 경우 NONE을 출력하기 위해 CASE문을 사용했다.

SELECT PT_NAME,
        PT_NO, 
        GEND_CD, 
        AGE, 
        (CASE WHEN TLNO IS NULL THEN 'NONE' 
        ELSE TLNO END) as TLNO
    FROM PATIENT 
WHERE AGE <= 12
AND GEND_CD = 'W'
ORDER BY AGE DESC, PT_NAME

 

CASE문을 사용하지 않고 IFNULL() 을 사용하면 다음과 같다.

SELECT PT_NAME, PT_NO, GEND_CD, AGE, IFNULL(TLNO, 'NONE') as TLNO
    FROM PATIENT 
WHERE AGE <= 12
AND GEND_CD = 'W'
ORDER BY AGE DESC, PT_NAME

 

IFNULL()은 IFNULL([칼럼명], [NULL인 경우 대체할 값]) 으로 사용할 수 있다.

728x90

'DB > SQL' 카테고리의 다른 글

[DB/SQL] UPPER/LOWER 대소문자 구문 없이 LIKE 사용하기  (0) 2023.03.22
[프로그래머스/SQL] 과일로 만든 아이스크림 고르기  (0) 2023.03.22
[프로그래머스/SQL] 서울에 위치한 식당 목록 출력하기  (0) 2023.03.22
[DB/SQL] CASE, WHEN, THEN, ELSE 사용하기  (0) 2023.03.21
[SQL] SUBSTRING_INDEX, SUBSTRING 문자열 데이터 다루기  (0) 2023.03.21
    'DB/SQL' 카테고리의 다른 글
    • [DB/SQL] UPPER/LOWER 대소문자 구문 없이 LIKE 사용하기
    • [프로그래머스/SQL] 과일로 만든 아이스크림 고르기
    • [프로그래머스/SQL] 서울에 위치한 식당 목록 출력하기
    • [DB/SQL] CASE, WHEN, THEN, ELSE 사용하기
    Chef.Yeon
    Chef.Yeon
    보기 좋고 깔끔한 코드를 요리하기 위해 노력하고 있습니다.

    티스토리툴바