TO_BINARY_FLOAT
구문
TO_BINARY_FLOAT(expr [ DEFAULT return_value ON CONVERSION ERROR ]
[, fmt [, 'nlsparam' ] ])
목적
TO_BINARY_FLOAT은 expr을 단정밀도(single-precision) 부동 소수점 숫자로 변환합니다.
- expr은 CHAR, VARCHAR2, NCHAR 또는 NVARCHAR2 유형의 문자열, NUMBER, BINARY_FLOAT 또는 BINARY_DOUBLE 유형의 숫자 값 또는 null을 평가하는 모든 식일 수 있습니다. expr이 BINARY_FLOAT이면 함수는 expr을 그대로 반환합니다. expr이 null로 평가되면 함수는 null을 반환합니다. 그렇지 않은 경우 함수는 expr을 BINARY_FLOAT 값으로 변환합니다.
- 선택적인 DEFAULT return_value ON CONVERSION ERROR 절을 사용하여 expr을 BINARY_FLOAT로 변환하는 동안 오류가 발생한 경우 이 함수가 반환하는 값을 지정할 수 있습니다. 이 절은 expr을 평가하는 동안 오류가 발생한 경우에는 영향을 미치지 않습니다. return_value는 표현식 또는 바인드 변수일 수 있으며 CHAR, VARCHAR2, NCHAR, 또는 NVARCHAR2 유형의 문자열, NUMBER, BINARY_FLOAT 또는 BINARY_DOUBLE 유형의 숫자 값 또는 null로 평가되어야 합니다. 함수는 return_value를 expr을 BINARY_FLOAT로 변환하는 방식과 동일하게 BINARY_FLOAT로 변환합니다. return_value를 BINARY_FLOAT로 변환할 수 없는 경우 함수는 오류를 반환합니다.
- 선택적인 'fmt' 및 'nlsparam' 인수는 TO_NUMBER 함수와 동일한 목적으로 사용됩니다. 이러한 인수를 지정하면 expr 및 return_value(지정된 경우)가 각각 문자열 또는 null이어야 합니다. 둘 중 하나가 문자열인 경우 함수는 문자열을 BINARY_FLOAT 값으로 변환하기 위해 fmt 및 nlsparam 인수를 사용합니다.
expr 또는 return_value가 다음과 같은 문자열로 평가되면 함수는 다음과 같이 변환합니다.
- 대소문자를 구분하지 않는 문자열 'INF'는 양의 무한대로 변환됩니다.
- 대소문자를 구분하지 않는 문자열 '-INF'는 음의 무한대로 변환됩니다.
- 대소문자를 구분하지 않는 문자열 'NaN'은 NaN(숫자가 아님)으로 변환됩니다.
문자열 expr에 부동 소수점 숫자 형식 요소(F, f, D 또는 d)를 사용할 수 없습니다.
문자열 또는 NUMBER에서 BINARY_FLOAT로의 변환은 숫자 및 문자 유형이 숫자 값을 나타내기 위해 십진 정밀도를 사용하고 BINARY_FLOAT가 이진 정밀도를 사용하기 때문에 비정확할 수 있습니다.
BINARY_DOUBLE에서 BINARY_FLOAT로의 변환은 BINARY_DOUBLE 값이 BINARY_FLOAT에서 지원하는 이진 정밀도보다 더 많은 비트의 정밀도를 사용하는 경우 비정확합니다.
참고:
TO_CHAR (number) 및 "Floating-Point Numbers"
예제
TO_BINARY_DOUBLE로 생성된 float_point_demo 테이블을 사용하여 다음 예제는 NUMBER 데이터 유형의 값을 BINARY_FLOAT 데이터 유형의 값으로 변환합니다:
SELECT dec_num, TO_BINARY_FLOAT(dec_num)
FROM float_point_demo;
DEC_NUM TO_BINARY_FLOAT(DEC_NUM)
---------- ------------------------
1234.56 1.235E+003
다음 예제는 지정된 표현식을 BINARY_FLOAT 값으로 변환할 수 없기 때문에 기본값 0을 반환합니다:
SELECT TO_BINARY_FLOAT('2oo' DEFAULT 0 ON CONVERSION ERROR) "Value"
FROM DUAL;
Value
----------
0
출처: 오라클 레퍼런스
원문 링크: Oracle TO_BINARY_FLOAT 함수 문서
'코딩 > 오라클 함수' 카테고리의 다른 글
[오라클 레퍼런스 함수] TO_BLOB (raw) - RAW 및 LONG RAW 값을 BLOB으로 변환 (0) | 2023.08.28 |
---|---|
[오라클 레퍼런스 함수] TO_BLOB (bfile) - BFILE 값을 BLOB 값으로 변환 (0) | 2023.08.28 |
[오라클 레퍼런스 함수] TO_BINARY_DOUBLE - double-precision 부동 소수점 숫자로 변환 (0) | 2023.08.28 |
[오라클 레퍼런스 함수] TO_APPROX_PERCENTILE - 백분위수 값에 대한 근사 중간값 반환 (0) | 2023.08.27 |
[오라클 레퍼런스 함수] TO_APPROX_COUNT_DISTINCT - 근사치 고유 값 수를 NUMBER 값으로 변환 (0) | 2023.08.27 |
댓글