순간을 기록으로

[프로그래머스] NULL 처리하기/ MySQL 본문

Problem Solving

[프로그래머스] NULL 처리하기/ MySQL

luminous13 2022. 2. 16. 14:05

문제

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

풀이

방법은 2가지 있다.

첫 번째 방법은 CASE문을 이용해서 데이터 값을 변경하는 방법이다. 아래소스에는 이 풀이법을 사용했다.

 

두 번재 풀이는 검색해서 찾았는데 IFNULL(NAME, 'No name')처럼 함수를 사용하면 된다. 만약 값이 NULL이면 뒤의 인수가 들어가고 NULL이 아니면 NAME인수가 들어간다. 

 

 

 

주의할 점

딱히 없다.

소스

방법1

SELECT 
    ANIMAL_TYPE,
    CASE 
        WHEN NAME IS NULL
            THEN 'No name'
        ELSE NAME
    END,
    SEX_UPON_INTAKE
FROM ANIMAL_INS;

 

방법2

SELECT 
	ANIMAL_TYPE, 
    IFNULL(NAME,'No name') AS NAME, 
    SEX_UPON_INTAKE
FROM ANIMAL_INS;
Comments