일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- MST
- 구현
- BFS
- JOIN
- 다익스트라
- 알고리즘
- 자바
- 백준
- db
- EC2
- AWS
- SQL
- Baekjoon
- Java
- 최단경로
- SQL코딩테스트
- 프로그래머스
- 프림
- 누적합
- Pirogramming
- 크루스칼
- django
- 피로그래밍
- union find
- Database
- GROUPBY
- 코딩테스트
- 그래프 탐색
- 배포
- OrderBy
Archives
- Today
- Total
NullNull
프로그래머스 SQL NULL 처리하기 본문
Data 구조
ANIMAL_INS : 동물 보호소에 들어온 동물의 정보를 담은 테이블
NAME | TYPE | NULLABLE |
ANIMAL_ID | VARCHAR(N) | FALSE |
ANIMAL_TYPE | VARCHAR(N) | FALSE |
DATETIME | DATETIME | FALSE |
INTAKE_CONDITION | VARCHAR(N) | FALSE |
NAME | VARCHAR(N) | TRUE |
SEX_UPON_INTAKE | VARCHAR(N) | FALSE |
문제
입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 어벗는 동물의 이름은 "No name"으로 표시해 주세요.
예시
Input:
ANIMAL_ID | ANIMAL_TYPE | DATETIME | INTAKE_CONDITION | NAME | SEX_UPON_INTAKE |
A350276 | Cat | 2017-08-13 13:50:00 | Normal | Jewel | Spayed Female |
A350375 | Cat | 2017-03-06 15:01:00 | Normal | Meo | Neutered Male |
A368930 | Dog | 2014-06-08 13:20:00 | Normal | NULL | Spayed Female |
Output:
ANIMAL_TYPE | NAME | SEX_UPON_INTAKE |
Cat | Jewel | Spayed Female |
Cat | Meo | Neutered Male |
Dog | No name | Spayed Female |
정답:
COALESCE 를 사용하는 문제였습니다. COALESCE는 첫 번째로 전달되는 값이 NULL이 아니면 그 값을 그대로 출력하고, NULL이라면 두번째로 전달된 인자 값을 출력합니다.
따라서 NAME이 NULL인 경우에 No name을 출력하게 됩니다.
SELECT ANIMAL_TYPE, COALESCE(NAME, 'No name'), SEX_UPON_INTAKE FROM ANIMAL_INS
'SQL' 카테고리의 다른 글
프로그래머스 SQL 없어진 기록 찾기 (0) | 2022.03.01 |
---|---|
MySQL DB JOIN 정리 (0) | 2022.03.01 |
프로그래머스 SQL 이름이 있는 동물의 아이디 (0) | 2022.02.28 |
프로그래머스 SQL 이름이 없는 동물의 아이디 (0) | 2022.02.28 |
프로그래머스 SQL 입양시각 구하기(2) (0) | 2022.02.28 |
Comments