NVL 함수 소개
NVL 함수는 첫 번째 인자로 전달된 값이 NULL인 경우, 두 번째 인자로 전달된 값을 반환하는 함수입니다. 많은 데이터베이스 시스템에서 사용할 수 있으며, 데이터베이스 컬럼이나 변수의 값이 NULL일 때 원하는 치환값을 사용할 수 있습니다.
NVL 함수 사용법
다음은 NVL 함수의 기본 사용법입니다:
NVL(expression, substitute)
expression
: 첫 번째 인자로 평가할 표현식입니다.substitute
: 두 번째 인자로 치환할 값입니다.
NVL 함수는 expression이 NULL이면 substitute를 반환합니다. expression이 NULL이 아니면 expression을 반환합니다.
NVL 함수 예제
다음은 NVL 함수의 몇 가지 예제입니다:
사용자 테이블에서 이름이 NULL인 사용자의 이름을 "Unknown"으로 변경하기:
SELECT NVL(name, 'Unknown') FROM users;
제품 테이블에서 가격이 NULL인 제품의 가격을 0으로 변경하기:
SELECT NVL(price, 0) FROM products;
NVL2 함수 소개
NVL2 함수는 첫 번째 인자로 전달된 값이 NULL이 아닌 경우 두 번째 인자를, NULL인 경우 세 번째 인자를 반환하는 함수입니다. NVL 함수와 다른 점은 NULL이 아닌 경우와 NULL인 경우에 따라 다른 값을 반환한다는 점입니다.
NVL2 함수 사용법
다음은 NVL2 함수의 기본 사용법입니다:
NVL2(expression, value_if_not_null, value_if_null)
expression
: 첫 번째 인자로 평가할 표현식입니다.value_if_not_null
: 두 번째 인자로 expression이 NULL이 아닌 경우 반환될 값입니다.value_if_null
: 세 번째 인자로 expression이 NULL인 경우 반환될 값입니다.
NVL2 함수는 expression이 NULL이 아니면 value_if_not_null을 반환하고, expression이 NULL이면 value_if_null을 반환합니다.
NVL2 함수 예제
다음은 NVL2 함수의 몇 가지 예제입니다:
사용자 테이블에서 나이가 NULL인 경우 "Unknown"을 아닌 경우 "Known"을 반환하기:
SELECT NVL2(age, 'Known', 'Unknown') FROM users;
주문 테이블에서 날짜가 NULL인 경우 "Not yet ordered"을 아닌 경우 "Ordered"를 반환하기:
SELECT NVL2(order_date, 'Ordered', 'Not yet ordered') FROM orders;
마무리
NVL과 NVL2 함수는 데이터베이스에서 NULL값을 다룰 때 유용한 함수입니다. NVL 함수는 NULL값을 다른 값으로 치환할 때 사용되며, NVL2 함수는 NULL값 여부에 따라 다른 값을 반환할 때 사용됩니다. 이러한 함수들을 활용하면 데이터베이스에서 NULL값을 처리하는 데 유연성을 높일 수 있습니다.
댓글