NANVL
Syntax
NANVL
(
value IN { real, double precision, numeric },
replacement IN { varchar, real, double precision, numeric }
)
RETURNS { real, double precision, numeric };
개요
NANVL 함수는 첫 번째 인자가 NaN(Not a Number)이면 두 번째 인자값을 반환하고, NaN이 아니면 첫 번째 인자값을 그대로 반환한다.
두 번째 인자가 varchar
가 아니라면, 첫 번째 인자와 타입이 동일해야 한다.
부동 소수점이나 숫자형 데이터에서 NaN을 다른 값으로 대체할 때 쓰인다.
파라미터
파라미터
설명
value
검사할 숫자 값(real
, double precision
, numeric
)이다; NaN
이면 replacement 값 반환한다.
replacement
value가 NaN
일 때 대신 반환할 값(varchar
, real
, double precision
, numeric
)이다;varchar
일 경우, value의 타입으로 자동 캐스팅 된다.
예제
# 테스트 1
SELECT oracle.NANVL(3.14, 0.0); -- 결과: 3.14 (3.14가 NaN이 아니므로 원래 값 반환)
nanvl
-------
3.14
(1 row)
# 테스트 2
SELECT oracle.NANVL('NaN'::float4, 0.0); -- 결과: 0.0 (첫 번째 값이 NaN이어서 대체값 0.0 반환)
nanvl
-------
0
(1 row)
Last updated