[프로그래머스 SQL/59041] NULL 처리하기
in Study / Coding Test
☑️ 문제
☑️ 풀이
첫 번째 시도 (실패)
SELECT ANIMAL_TYPE, NVL(NAME, 'No name'), SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID
- NVL 함수를 이용해서 풀려고 하니 오류가 발생했다.
- NVL은 Oracle 전용 함수
- MySQL에서는 사용할 수 없는 함수이다.
두 번째 시도 (성공)
SELECT ANIMAL_TYPE, COALESCE(NAME, 'No name') AS NAME, SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID
- COALESCE 함수를 이용하였다.
- 이름이 null일 경우, No name으로 대체되어 출력된다.
☑️ 문법 정리
COALESCE()
COALESCE(column, default_value)
- NULL값을 특정 값으로 대체할 때 사용한다.
- 다수의 인자를 받을 수 있으며, 가장 앞에 있는 NULL이 아닌 값을 반환한다.