NULL 처리하기
문제 설명
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
NAMETYPENULLABLEANIMAL_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"으로 표시해 주세요.
풀이
코드 블록
SELECT ANIMAL_TYPE, IF(NAME IS NOT NULL, NAME, 'No name') AS NAME, SEX_UPON_INTAKE FROM ANIMAL_INS
1. 3가지 필드가 출력되어야 합니다 각각 ANIMAL_TYPE, NAME, SEX_UPON_INTAKE이며 여기에서 NAME은 조건에 따라서 값이 변경되어야 하는 부분이 있습니다.
2. SQL문에서의 조건문 IF( 조건, 참일 경우, 거짓일 경우)로 사용할 수 있고 위에서는 NAME 필드의 데이터가 NULL이 아닐 경우에는 NAME의 값을 그대로 반환하고 맞을 경우에는 'No name'으로 변경하라는 의미를 나타냅니다.
3. AS문을 이용하여 해당 내용 조건문대로 처리된 필드의 이름을 NAME으로 설정합니다.
'DevLog' 카테고리의 다른 글
[Troubleshooting] selenium : DeprecationWarning: executable_path has been deprecated (0) | 2022.10.15 |
---|---|
[프로그래머스] SQL 중성화 여부 파악하기 (0) | 2022.10.01 |
[프로그래머스] SQL 입양 시각 구하기(1) (0) | 2022.09.30 |
[프로그래머스] SQL DATETIME에서 DATE로 형 변환 (1) | 2022.09.30 |
[프로그래머스] SQL 최댓값 구하기 (0) | 2022.09.30 |