카테고리:

반정형 및 정형 데이터 함수 (구문 분석)

CHECK_JSON

JSON 문서의 유효성을 확인합니다. 입력 문자열이 유효한 JSON 문서 또는 NULL인 경우, 출력은 NULL입니다(즉, 오류 없음). 입력을 유효한 JSON 값으로 변환할 수 없는 경우, 출력 문자열에 오류 메시지가 포함됩니다.

구문

CHECK_JSON( <string_or_variant_expr> )
Copy

인자

string_or_variant_expr

확인할 VARIANT 또는 문자열 값(또는 식)입니다.

식이 VARIANT 형식인 경우, 문자열을 포함해야 합니다.

테이블을 만들고 일부 VARCHARVARIANT 값을 삽입합니다.

CREATE TABLE sample_json_table (ID INTEGER, varchar1 VARCHAR, variant1 VARIANT);
INSERT INTO sample_json_table (ID, varchar1) VALUES 
    (1, '{"ValidKey1": "ValidValue1"}'),
    (2, '{"Malformed -- Missing value": }'),
    (3, NULL)
    ;
UPDATE sample_json_table SET variant1 = varchar1::VARIANT;
Copy

CHECK_JSON 함수를 사용하여 VARCHAR 열에서 잠재적인 JSON 호환 문자열의 유효성을 확인합니다.

SELECT ID, CHECK_JSON(varchar1), varchar1 FROM sample_json_table ORDER BY ID;
+----+----------------------+----------------------------------+
| ID | CHECK_JSON(VARCHAR1) | VARCHAR1                         |
|----+----------------------+----------------------------------|
|  1 | NULL                 | {"ValidKey1": "ValidValue1"}     |
|  2 | misplaced }, pos 32  | {"Malformed -- Missing value": } |
|  3 | NULL                 | NULL                             |
+----+----------------------+----------------------------------+
Copy

CHECK_JSON 함수를 사용하여 VARIANT 열에서 잠재적인 JSON 호환 문자열의 유효성을 확인합니다.

SELECT ID, CHECK_JSON(variant1), variant1 FROM sample_json_table ORDER BY ID;
+----+----------------------+--------------------------------------+
| ID | CHECK_JSON(VARIANT1) | VARIANT1                             |
|----+----------------------+--------------------------------------|
|  1 | NULL                 | "{\"ValidKey1\": \"ValidValue1\"}"   |
|  2 | misplaced }, pos 32  | "{\"Malformed -- Missing value\": }" |
|  3 | NULL                 | NULL                                 |
+----+----------------------+--------------------------------------+
Copy