문제
PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요. 이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고 결과는 나이를 기준으로 내림차순 정렬하고, 나이 같다면 환자이름을 기준으로 오름차순 정렬해주세요.
정리한 조건
1. 12세 이하
2.여자
3.환자이름, 환자번호,성별코드, 나이, 전화번호 조회
4.전화번호 없는 경우 'NONE'
5.나이 기준 내림차순, 나이 같으면 환자이름 기준 오름차순
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 asc;
select 컬럼명 적는 순서도 데이터 출력할 때 영향을 미치니까 순서 잘 적자
부등호 <= 인거 순서 지키기
ifnull
해당 column 의 값이 NULL 값을 반환할 때 다른 값으로 출력할 수 잇도록 하는 함수다
select ifnull(name, "No name") as name
from animal_ins
Name Column이 NULL 인 경우 "No name"을 출력, NULL 이 아닌 경우 NAME Column을 출력함
'SQL' 카테고리의 다른 글
| SQL 프로그래머스 132203 흉부외과 또는 일반외과 의사 목록 출력하기 (0) | 2024.01.17 |
|---|---|
| SQL date_format 개념 (0) | 2024.01.17 |
| SQL 프로그래머스 131112 강원도에 위치한 생산공장 목록 출력하기 (0) | 2024.01.17 |
| SQL 프로그래머스 133024 인기있는 아이스크림 (0) | 2024.01.17 |
| SQL 프로그래머스 151136 평균 일일 대여 요금 구하기 (0) | 2024.01.16 |