- カテゴリ:
半構造化データ関数と構造化データ関数 (解析)
CHECK_JSON¶
JSON ドキュメントの有効性を確認します。入力文字列が有効な JSON ドキュメントまたは NULLである場合、出力は NULL (エラーなし)になります。入力を有効な JSON 値に変換できない場合、出力文字列にはエラーメッセージが含まれます。
構文¶
CHECK_JSON( <string_or_variant_expr> )
引数¶
string_or_variant_expr
チェックする
VARIANT
または文字列値(または式)です。式が
VARIANT
型の場合、文字列を含める必要があります。
例¶
テーブルを作成し、いくつかの VARCHAR
および VARIANT
値を挿入します。
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;
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 | +----+----------------------+----------------------------------+
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 | +----+----------------------+--------------------------------------+