- 카테고리:
반정형 및 정형 데이터 함수 (캐스트)
AS_DECIMAL , AS_NUMBER¶
선택적 정밀도와 스케일로 VARIANT 값을 고정 소수점 10진수(부동 소수점 값과 일치하지 않음)로 캐스팅합니다.
AS_NUMBER는 AS_DECIMAL의 동의어입니다.
- 참고 항목:
구문¶
AS_DECIMAL( <variant_expr> [ , <precision> [ , <scale> ] ] )
AS_NUMBER( <variant_expr> [ , <precision> [ , <scale> ] ] )
인자¶
variant_expr
VARIANT 형식의 값으로 평가되는 식입니다.
precision
저장할 10진수의 유효 자릿수입니다.
scale
소수점 이하 유효 자릿수입니다.
사용법 노트¶
precision
의 기본값은38
이고scale
은0
입니다.스케일을 줄일 때 이 함수는 반올림됩니다. 이로 인해, 범위를 벗어난 오류가 발생할 수 있습니다.
예¶
이는 함수를 사용하는 방법을 보여줍니다.
테이블과 데이터를 만듭니다.
CREATE TABLE multiple_types ( binary1 VARIANT, date1 VARIANT, decimal1 VARIANT, time1 VARIANT, timestamp1 VARIANT ); INSERT INTO multiple_types (binary1, date1, decimal1, time1, timestamp1) SELECT TO_VARIANT(TO_BINARY('F0A5')), TO_VARIANT(TO_DATE('2018-10-10')), TO_VARIANT(TO_DECIMAL(1.23, 6, 3)), TO_VARIANT(TO_TIME('12:34:56')), TO_VARIANT(TO_TIMESTAMP_NTZ('2018-10-10 12:34:56')) ;이제 쿼리를 실행합니다.
SELECT AS_DECIMAL(decimal1, 6, 3) AS "Decimal" FROM multiple_types;출력:
+---------+ | Decimal | |---------| | 1.230 | +---------+