Notice
Recent Posts
Recent Comments
Link
김재호
프로그래머스 SQL 본문
https://school.programmers.co.kr/learn/courses/30/lessons/59410
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr

- SELECT ANIMAL_TYPE
- 동물의 종(예: Dog, Cat 등)을 가져옵니다.
- CASE WHEN NAME IS NULL THEN 'No name' ELSE NAME END
- 조건 분기문인 CASE를 사용해 NAME이 NULL일 때만 "No name"으로 치환합니다.
- NULL이 아니라면 원래 이름 값을 그대로 보여줍니다.
- SEX_UPON_INTAKE
- 입소 당시 성별/중성화 여부 정보를 가져옵니다.
- ORDER BY ANIMAL_ID ASC
- 동물 ID 기준으로 오름차순 정렬합니다.
- 출력 순서가 고정되기 때문에 결과 비교/검증이 편해집니다.
간단한 표준 함수로 더 짧게 쓰는 방법: COALESCE
NULL 치환을 할 때 SQL에서 가장 흔하게 쓰는 표준 함수가 COALESCE입니다.
COALESCE란?
- COALESCE(a, b, c, ...)는 왼쪽부터 순서대로 검사해서 NULL이 아닌 첫 값을 반환합니다.
- 즉 NAME이 NULL이면 대체 문자열을 반환하도록 자연스럽게 작성할 수 있습니다.
CASE를 COALESCE로 바꾼 버전
SELECT
ANIMAL_TYPE,
COALESCE(NAME, 'No name') AS ANIMAL_NAME,
SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID ASC;
ANIMAL_TYPE,
COALESCE(NAME, 'No name') AS ANIMAL_NAME,
SEX_UPON_INTAKE
FROM ANIMAL_INS
ORDER BY ANIMAL_ID ASC;
장점
- 코드가 짧고 읽기 쉽습니다.
- “NULL이면 대체값”이라는 의도가 함수 하나로 명확해집니다.
- 여러 DB에서 폭넓게 지원하는 표준 함수라 범용성이 좋습니다.
'코딩테스트' 카테고리의 다른 글
| 프로그래머스 SQL (0) | 2026.02.27 |
|---|---|
| 프로그래머스 SQL (0) | 2026.02.21 |
| 프로그래머스 SQL (0) | 2026.02.21 |
| 프로그래머스 SQL (0) | 2026.02.21 |
| 프로그래머스 SQL (0) | 2026.02.21 |