Dev Hyeri

◖코딩 테스트◗▬▬▬▬▬▬▬▬▬/프로그래머스

[SQL KIT] (2024) NULL 처리하기(설명/코드/정답)

_hyeri 2024. 1. 27. 17:08

 

 

문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/59410

 

정상 코드.

방법 1.COALESCE 사용

SELECT ANIMAL_TYPE, 
       COALESCE(NAME, 'No name') AS NAME, 
       SEX_UPON_INTAKE 
FROM ANIMAL_INS
ORDER BY ANIMAL_ID

 

 

방법 2. IFNULL사용 

SELECT ANIMAL_TYPE, 
       IFNULL(NAME, 'No name') AS NAME, 
       SEX_UPON_INTAKE 
FROM ANIMAL_INS
ORDER BY ANIMAL_ID

 

 

방법 3. CASE표현식 사용

SELECT ANIMAL_TYPE, 
       CASE 
           WHEN NAME IS NULL THEN 'No name' 
           ELSE NAME 
       END AS NAME, 
       SEX_UPON_INTAKE 
FROM ANIMAL_INS
ORDER BY ANIMAL_ID

 

 

 

내부 동작 순서 

 

1. FROM 절

ANIMAL_INS 테이블에서 데이터를 추출

 

4. SELECT 절

NAME, SEX_UPON_INTAKE 열을 선택,

CASE 문을 사용하여 NAME이 NULL인 경우 'No name'으로 대체 아니면 NAME 값을 그대로 출력

 

5. ORDER BY 절

결과를 ANIMAL_ID를 기준으로 정렬

 

 

NULL 처리 방법