nickjoIT
NULL 제어 본문
DECLARE
x NUMBER := 5;
y NUMBER := NULL;
BEGIN
--y가 NULL이므로 비교 연산이 불가하므로 FALSE
IF x != y THEN
DBMS_OUTPUT.PUT_LINE('x != y'); --not executed
--y가 NULL이므로 비교 연산이 불가하므로 FALSE
ELSIF x = y THEN
DBMS_OUTPUT.PUT_LINE('x=y'); --not executed
--비교 연산이 불가하므로 ELSE 부분만 수행이 됨
ELSE
DBMS_OUTPUT.PUT_LINE('Can''t tell if x and y are equal or not.');
END IF;
--NULL 여부는 IS NULL 함수를 이용하여 비교해야함
IF y IS NULL THEN
DBMS_OUTPUT.PUT_LINE('y IS NULL');
END IF;
--NULL일 경우 NVL을 이용하여 비교 수행
IF x = NVL(y,5) THEN
DBMS_OUTPUT.PUT_LINE('x=y');
ELSE
DBMS_OUTPUT.PUT_LINE('x!=y');
END IF;
END;
/
'DB > oracle' 카테고리의 다른 글
프로시저 입/출력 매개변수 (0) | 2017.05.24 |
---|---|
NVL, NVL2, NULLIF, COALESCE (0) | 2017.05.24 |
%TYPE && %ROWTYPE (0) | 2017.05.22 |
레코드 타입 (0) | 2017.05.22 |
SELECT INTO (0) | 2017.05.21 |
Comments