데이터 놀이터
SELECT - 12세 이하인 여자 환자 목록 출력하기 본문
728x90
1. 문제
PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요.
이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고
결과는 나이를 기준으로 내림차순 정렬하고, 나이 같다면 환자이름을 기준으로 오름차순 정렬해주세요.
https://school.programmers.co.kr/learn/courses/30/lessons/132201
2. 문제 조건
- 12세 이하인 여자환자 -> WHERE, 12세 이하이면서 성별 여자
- 환자이름, 환자번호, 성별코드, 나이, 전화번호 조회 -> SELECT
- 전화번호가 없는 경우, 'NONE' 출력 -> CASE WHEN, IS NULL 활용
- 나이 내림차순, 환자이름 오름차순 -> ORDER BY
3. 코드 작성
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;
4. 회고
- 비교적 쉬운 문제였다. NULL 값을 선택할 때, =, != NULL이 아니라 IS NULL, IS NOT NULL을 활용해야 한다는 걸 복습해볼 수 있는 계기가 되었다.
728x90
'SQL' 카테고리의 다른 글
IS NULL - 경기도에 위치한 식품창고 목록 출력하기 (0) | 2023.08.21 |
---|---|
JOIN - 없어진 기록 찾기 (0) | 2023.08.18 |
GROUP BY - 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 (0) | 2023.08.15 |
GROUP BY - 대여 횟수가 많은 자동차들의 월별 대여 횟수 구하기 (0) | 2023.08.15 |
GROUP BY - 카테고리 별 도서 판매량 집계하기 (0) | 2023.08.15 |