特定の JSON パスに JSON 値が存在するかどうかを確認します。
構文
BOOLEAN JSON_EXISTS(<json>, <json_path>)パラメータ
パラメータ | 必須 | 説明 |
json | はい | 処理する JSON 式を指定します。 |
json_path | はい | 特定の JSON 値がチェックされる JSON パスを指定します。 |
説明
指定した JSON パスが無効な場合、エラーが報告されます。厳密モードでは、JSON パス内の JSON データの構造が JSON データの実際の構造と一致しない場合、エラーは報告されず、JSON_EXISTS 関数は false を返します。
戻り値
戻り値は BOOLEAN 型の true または false です。
例
例 1:JSON オブジェクトにキー 'a' の値が存在するかどうかを確認します。
SELECT JSON_EXISTS(JSON '{"a":1, "b":2}', '$.a');次の結果が返されます。
+------+ | _c0 | +------+ | true | +------+例 2:JSON オブジェクトにキー 'c' の値が存在するかどうかを確認します。
SELECT JSON_EXISTS(JSON '{"a":1, "b":2}', '$.c');次の結果が返されます。
SELECT JSON_EXISTS(JSON '{"a":1, "b":2}', '$.c');例 3:特定の添え字に基づいて取得された値が存在するかどうかを確認します。
SELECT JSON_EXISTS(JSON '[1,2, {"a":34}]', '$[2].a');次の結果が返されます。
+------+ | _c0 | +------+ | true | +------+
関連関数
JSON_EXISTS は複合型関数です。ARRAY、MAP、STRUCT、JSON などの複合データ型のデータを処理するために使用される関数の詳細については、「複合型関数」をご参照ください。