[프로그래머스(Programmers)][SQL] IS NULL (Lv2) NULL 처리하기

728x90

 

https://programmers.co.kr/learn/courses/30/lessons/59410

 

코딩테스트 연습 - NULL 처리하기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

 

 

동물의 생물 종, 이름, 성별중성화 여부아이디 순으로 조회하는 SQL 문
( 이름이 없는 동물의 이름은 "No name"으로 표시 )

 

MySQL

SELECT ANIMAL_TYPE, IF( NAME IS NULL, 'No name', NAME ) NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;

 

 ※  IF ( )

더보기
IF( expr1, expr2, expr3 )

expr1 가 TRUE  ( expr1 <> 0 and expr1 IS NOT NULL ) 라면 expr2 리턴
FALSE 면 expr 3 리턴

 

 

Oracle

SELECT ANIMAL_TYPE, DECODE( NAME, NULL, 'No name', NAME ) NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;

 

 ※  DECODE ( )

더보기
DECODE( expr, search_value, return_value [, search_value2, return_value2 ... ] [, default_value] )

expr 가  search_value 와 같으면 return_value 리턴
[ search_value2와 같으면 return_value2 리턴 ]
같지 않으면 default_value 리턴

 

 

 

반응형