-
728x90
문제 설명
다음은 식품창고의 정보를 담은 FOOD_WAREHOUSE 테이블입니다. FOOD_WAREHOUSE 테이블은 다음과 같으며 WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, TLNO, FREEZER_YN는 창고 ID, 창고 이름, 창고 주소, 전화번호, 냉동시설 여부를 의미합니다.
문제
FOOD_WAREHOUSE 테이블에서 경기도에 위치한 창고의 ID, 이름, 주소, 냉동시설 여부를 조회하는 SQL문을 작성해주세요. 이때 냉동시설 여부가 NULL인 경우, 'N'으로 출력시켜 주시고 결과는 창고 ID를 기준으로 오름차순 정렬해주세요.
답안
-- 코드를 입력하세요 SELECT warehouse_id, warehouse_name, address, IFNULL(FREEZER_YN,'N') FROM food_warehouse WHERE address like '%경기도%' order by warehouse_id
IFNULL 함수를 이용해 NULL값을 N으로 출력.
참고
mysql
NULL 처리함수는 IFNULL, CASE, COALESCE가 있다.- IFNULL()
- SELECT IFNULL(컬럼, NULL 대체 값) FROM 테이블;
- 컬럼이 NULL인 경우는 NULL 대체 값이 출력된다.
- IF()
- SELECT IF(IS NULL(컬럼), "A", "B") FROM 테이블;
- 컬럼이 널인 경우는 A를 출력하고 NULL이 아닌 경우 B를 출력한다.
- COALESCE()
- SELECT COALESCE(컬럼1, 컬럼2, 컬럼3 ... ) FROM 테이블;
- 입력한 컬럼 또는 대체값 중에서 NULL이 아닌 첫번째 값을 출력한다.
728x90'database > coding test' 카테고리의 다른 글
SUM,MAX,MIN - 가장 비싼 상품 구하기 (0) 2023.09.01 IS NULL - 나이 정보가 없는 회원 수 구하기 (0) 2023.08.31 SELECT - 조건에 맞는 회원수 구하기 (0) 2023.08.31 SELECT - 오프라인/온라인 판매 데이터 통합하기 (0) 2023.08.30 SELECT - 재구매가 일어난 상품과 회원 리스트 구하기 (0) 2023.08.29 - IFNULL()