문제풀이/SQL(Oracle)
[문제풀이] NULL 처리하기/경기도에 위치한 식품창고 목록 출력하기
kime2
2024. 2. 1. 10:24
출처
문제
입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 "No name"으로 표시해 주세요.
풀이(ORACLE)
SELECT animal_type, NVL(name,'No name'),sex_upon_intake #name이 null값이면 no name으로 대체
from animal_ins
ORDER BY ANIMAL_ID ;
출처
문제
입양 게시판에 동물 정보를 게시하려 합니다. 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 프로그래밍을 모르는 사람들은 NULL이라는 기호를 모르기 때문에, 이름이 없는 동물의 이름은 "No name"으로 표시해 주세요.
풀이(ORACLE)
SELECT warehouse_id, warehouse_name, address, NVL(freezer_yn,'N') #freezer_yn이 null값이면 N로 대체
from food_warehouse
where address like '%경기도%'
order by warehouse_id
배운점
- null값 대체방법 : null값에 다른 데이터 입력하기
My SQL | Oracle |
ifnull(컬럼, 대채값) | NVL(컬럼, 대채값) |
if(조건문, 참일때 값, 거짓일때 값) | NVL2(컬럼, NULL이 아닐때 대체값, NULL일때 대체값) |
- 오라클에서는 if()사용불가