CAN_JSON_PARSE 関数
CAN_JSON_PARSE 関数は JSON 形式でデータを解析し、JSON_PARSE 関数を使用して結果を SUPER
値に変換できる場合は true
を返します。
構文
CAN_JSON_PARSE( {json_string | binary_value} )
引数
- json_string
-
シリアル化された JSON を
VARCHAR
形式で返す式。 - binary_value
-
VARBYTE データ型のバイナリ値。
戻り型
BOOLEAN
使用に関する注意事項
CAN_JSON_PARSE は空の文字列に対して false を返します。入力引数が null の場合は、NULL を返します。
例
次の例は、CASE 条件を使用して適切に形成された JSON 配列に対する CAN_JSON_PARSE の実行を示しています。これは true を返すため、Amazon Redshift はサンプル値に対して JSON_PARSE 関数を実行します。
SELECT CASE WHEN CAN_JSON_PARSE('[10001,10002,"abc"]') THEN JSON_PARSE('[10001,10002,"abc"]') END;
case --------------------- '[10001,10002,"abc"]'
次の例は、CASE 条件を使用して JSON 形式ではない値に対する CAN_JSON_PARSE の実行を示しています。これは false を返すため、Amazon Redshift は代わりに CASE 条件の ELSE 句でセグメントを返します。
SELECT CASE WHEN CAN_JSON_PARSE('This is a string.') THEN JSON_PARSE('This is a string.') ELSE 'This is not JSON.' END;
case --------------------- "This is not JSON."