본문 바로가기

[오라클 레퍼런스 함수] NANVL - NaN(숫자가 아님) 처리 함수

by ㅇㅍㅍ 2023. 8. 10.
[오라클 레퍼런스 함수] NANVL - NaN(숫자가 아님) 처리 함수
728x90

 

 

NANVL

 

구문

NANVL(n2, n1)

 

목적

NANVL 함수는 BINARY_FLOAT 또는 BINARY_DOUBLE 유형의 부동 소수점 숫자에 대해서만 유용합니다. 이 함수는 입력 값 n2NaN(숫자가 아님)인 경우 대체 값을 n1로 반환하도록 Oracle Database에 지시합니다. 만약 n2NaN아니면, Oracle은 n2를 반환합니다.

이 함수는 어떤 숫자 데이터 유형이든지 또는 숫자 데이터 유형으로 암묵적으로 변환될 수 있는 비숫자 데이터 유형을 인수로 사용할 수 있습니다. Oracle은 가장 높은 숫자 우선순위를 갖는 인수를 결정하고, 나머지 인수를 그 데이터 유형으로 암묵적으로 변환한 후 그 데이터 유형을 반환합니다.

 

참고:

암묵적 변환에 대한 자세한 내용은 표 2-8을 참조하고, 이진 부동 소수점 숫자 비교 의미론에 대한 정보는 "Floating-Point Numbers", 숫자 우선순위에 관한 정보는 "Numeric Precedence"를 참조하세요.

 

예제

TO_BINARY_DOUBLE용으로 생성된 테이블 float_point_demo를 사용하여 테이블에 두 번째 항목을 삽입하십시오.

INSERT INTO float_point_demo
  VALUES (0,'NaN','NaN');

SELECT *
  FROM float_point_demo;

   DEC_NUM BIN_DOUBLE  BIN_FLOAT
---------- ---------- ----------
   1234.56 1.235E+003 1.235E+003
         0        Nan        Nan

 

다음 예제는 숫자인 경우 bin_float를 반환하고, 그렇지 않으면 0을 반환합니다.

SELECT bin_float, NANVL(bin_float,0)
  FROM float_point_demo;

 BIN_FLOAT NANVL(BIN_FLOAT,0)
---------- ------------------
1.235E+003         1.235E+003
       Nan                  0

 


출처: 오라클 레퍼런스

원문 링크: Oracle NANVL 함수 문서

 

반응형

댓글