SQL 문제

[프로그래머스 SQL] 경기도에 위치한 식품창고 목록 출력하기

빙수빈수 2023. 9. 27. 11:26

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

[문제]

다음은 식품창고의 정보를 담은 FOOD_WAREHOUSE 테이블입니다. FOOD_WAREHOUSE 테이블은 다음과 같으며 WAREHOUSE_IDWAREHOUSE_NAMEADDRESSTLNOFREEZER_YN는 창고 ID, 창고 이름, 창고 주소, 전화번호, 냉동시설 여부를 의미합니다.

 

Column name Type Nullable
WAREHOUSE_ID VARCHAR(10) FALSE
WAREHOUSE_NAME VARCHAR(10) FALSE
ADDRESS VARCHAR(10) TRUE
TLNO VARCHAR(10) TRUE
FREEZER_YN VARCHAR(10) TRUE

FOOD_WAREHOUSE 테이블에서 경기도에 위치한 창고의 ID, 이름, 주소, 냉동시설 여부를 조회하는 SQL문을 작성해주세요. 이때 냉동시설 여부가 NULL인 경우, 'N'으로 출력시켜 주시고 결과는 창고 ID를 기준으로 오름차순 정렬해주세요.

 

[코드]

SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, IFNULL(FREEZER_YN,'N') AS FREEZER_YN
FROM FOOD_WAREHOUSE
WHERE WAREHOUSE_NAME LIKE '%경기%'
ORDER BY WAREHOUSE_ID;

 

[고찰]

 이번 문제는 이전에 풀어봤던 문제에서 만약 NULL 값을 가지면 다른 값으로 대체해주는 IFNULL 함수를 알고 있다면 쉽게 해결할 수 있는 문제였다. 또한, LIKE 명령어를 사용하여 문자열 WAREHOUSE_NAME에 경기 값을 갖고 있는 컬럼만 출력하도록 조건을 걸어주면 끝이다.