카테고리:

반정형 및 정형 데이터 함수 (캐스트)

AS_OBJECT

VARIANT 값을 오브젝트로 캐스팅합니다.

참고 항목:

AS_<오브젝트_유형_> , AS_ARRAY

구문

AS_OBJECT( <variant_expr> )
Copy

인자

variant_expr

VARIANT 형식의 값으로 평가되는 식입니다.

사용법 노트

  • 이 함수는 입력 인자로 정형 유형 을 지원하지 않습니다.

이는 함수를 사용하는 방법을 보여줍니다.

테이블과 데이터를 만듭니다.

CREATE TABLE multiple_types (
    array1 VARIANT,
    array2 VARIANT,
    boolean1 VARIANT,
    char1 VARIANT,
    varchar1 VARIANT,
    decimal1 VARIANT,
    double1 VARIANT,
    integer1 VARIANT,
    object1 VARIANT
    );
INSERT INTO multiple_types 
     (array1, array2, boolean1, char1, varchar1, 
      decimal1, double1, integer1, object1)
   SELECT 
     TO_VARIANT(TO_ARRAY('Example')), 
     TO_VARIANT(ARRAY_CONSTRUCT('Array-like', 'example')), 
     TO_VARIANT(TRUE), 
     TO_VARIANT('X'), 
     TO_VARIANT('I am a real character'), 
     TO_VARIANT(1.23::DECIMAL(6, 3)),
     TO_VARIANT(3.21::DOUBLE),
     TO_VARIANT(15),
     TO_VARIANT(TO_OBJECT(PARSE_JSON('{"Tree": "Pine"}')))
     ;
Copy

이제 쿼리를 실행합니다.

SELECT 
       AS_ARRAY(array1) AS "ARRAY1",
       AS_ARRAY(array2) AS "ARRAY2",
       AS_BOOLEAN(boolean1) AS "BOOLEAN",
       AS_CHAR(char1) AS "CHAR",
       AS_DECIMAL(decimal1, 6, 3) AS "DECIMAL",
       AS_DOUBLE(double1) AS "DOUBLE",
       AS_INTEGER(integer1) AS "INTEGER",
       AS_OBJECT(object1) AS "OBJECT",
       AS_ARRAY(object1) AS "OBJECT AS ARRAY"
  FROM multiple_types;
+-------------+-----------------+---------+------+---------+--------+---------+------------------+-----------------+
| ARRAY1      | ARRAY2          | BOOLEAN | CHAR | DECIMAL | DOUBLE | INTEGER | OBJECT           | OBJECT AS ARRAY |
|-------------+-----------------+---------+------+---------+--------+---------+------------------+-----------------|
| [           | [               | True    | X    |   1.230 |   3.21 |      15 | {                | NULL            |
|   "Example" |   "Array-like", |         |      |         |        |         |   "Tree": "Pine" |                 |
| ]           |   "example"     |         |      |         |        |         | }                |                 |
|             | ]               |         |      |         |        |         |                  |                 |
+-------------+-----------------+---------+------+---------+--------+---------+------------------+-----------------+
Copy