Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- 일정관리 프로젝트
- docker
- 이것이 자바다
- S3
- 프로그래머스
- 코테
- GIT
- CI/CD
- 데이터 베이스
- 알고리즘
- Redis
- 연습문제
- Java
- 일정관리프로젝트
- LV.02
- CoffiesVol.02
- JPA
- mysql
- Join
- LV02
- Til
- spring boot
- LV1
- LV01
- 디자인 패턴
- LV03
- LV0
- SQL
- Lv.0
- 포트폴리오
Archives
- Today
- Total
코드 저장소.
[프로그래머스] 12세 이하인 여자 환자 목록 출력하기 본문
문제
다음은 종합병원에 등록된 환자정보를 담은 PATIENT 테이블입니다. PATIENT 테이블은 다음과 같으며 PT_NO, PT_NAME, GEND_CD, AGE, TLNO는 각각 환자번호, 환자이름, 성별코드, 나이, 전화번호를 의미합니다.
Column name | Type | Nullable |
PT_NO | VARCHAR(10) | FALSE |
PT_NAME | VARCHAR(20) | FALSE |
GEND_CD | VARCHAR(1) | FALSE |
AGE | INTEGER | FALSE |
TLNO | VARCHAR(50) | TRUE |
문제
PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요. 이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고 결과는 나이를 기준으로 내림차순 정렬하고, 나이 같다면 환자이름을 기준으로 오름차순 정렬해주세요.
요구사항
1.12세 이하인 여자환자
2.전화번호가 없는경우에는 'NONE'
3.나이를 기준으로 내림차순으로 정렬 + 나이 같다면 환자이름을 기준으로 오름차순으로 정렬
작성답안
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
나이가 12세 이하인 여자이므로 조건절에서 넣고 (WHERE AGE <=12 AND GEND_CD = 'W')
전화번호컬럼에 내용이 없으면 'NONE'으로 출력하기 위해서는 ifnull을 사용한 뒤 별칭을 써서 TLNO으로
컬럼을 정의하고
마지막으로 나이를 기준으로 내림차순으로 정렬 + 환자이름을 오름차순으로 정렬하기 위해서
order by를 써서 (ORDER BY AGE DESC,PT_NAME) 정렬하면 된다.
※추가적으로 공부할 내용
if , ifnull 문법
'코테 > SQL' 카테고리의 다른 글
[프로그래머스] LV.01 인기있는 아이스크림 (0) | 2023.03.01 |
---|---|
[프로그래머스] LV.01 흉부외과 또는 일반외과 의사 목록 출력하기 (0) | 2023.03.01 |
[프로그래머스] LV.01 가장 비싼 상품 구하기 (0) | 2023.03.01 |
[프로그래머스] LV.01 이름이 없는 동물의 아이디 (0) | 2023.03.01 |
[프로그래머스]LV.01 조건에 맞는 회원수 구하기 (0) | 2023.03.01 |