SQL 고득점 Kit - 8.20

김동현·2024년 8월 20일

SQL 고득점 Kit

목록 보기
34/56

IS NULL - NULL 처리하기

문제

입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 "No name"으로 표시해 주세요.

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

풀이

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

리뷰

  • 자주 풀던 유형의 문제가 아니라서 어떤 것이 가능한지 잘 몰랐다 그래서 내가 원하는 함수가 존재하는지 검색을 통해 풀었다.
  • 이러한 유형의 문제도 자주 풀면서 다양한 관점과 사용 방법을 공부해야겠다.

학습

  • NULL을 확인하고 대체하는 방법은 여러 가지가 존재한다.
    1. IFNULL(컬럼, 'NULL인 경우 대체할 값')
    2. CASE : SELECT에서 조건문처럼 사용할 수 있다.
    3. COALESCE(컬럼1, 컬럼2, ... , NULL인 경우 대체할 값) : 컬럼이 아닌 값을 대체한다.

GitHub

https://github.com/lasentia/SQL_Study/tree/main/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4/2/59410.%E2%80%85NULL%E2%80%85%EC%B2%98%EB%A6%AC%ED%95%98%EA%B8%B0

profile
'The best way to get started is to quit talking and begin doing.'

0개의 댓글