JSON_ARRAY
JSON_ARRAY_enumeration_content::=
JSON_on_null_clause::=
JSON_returning_clause::=
JSON_ARRAY_query_content::=
目的
SQL/JSONファンクション JSON_ARRAYは、一連のSQLスカラー式、または1つのコレクション・タイプ・インスタンス、 VARRAYまたはNESTED TABLEを入力として取ります。
それぞれの式をJSON値に変換し、そのJSON値を含むJSON配列を返します。
ADTにコレクションのメンバーがある場合、型マッピングを実行すると、そのADTに対応するJSONオブジェクトと、コレクション・メンバーのネストしたJSON配列が作成されます。
コレクションにADTインスタンスが含まれている場合は、型マッピングによってJSONオブジェクトのJSON配列が作成されます。
ノート:
『JSON開発者ガイド』のSQLを使用したJSONデータの生成を参照してください。
JSON_ARRAY_content
JSON_ARRAYファンクションの入力を定義するとき、この句を使用します。
JSON_ARRAY_element
- expr
exprには、JSONオブジェクト、JSON配列、数値リテラル、テキスト・リテラル、日付、タイムスタンプ、NULLのいずれかに評価される任意のSQL式を指定できます。このファンクションは、数値リテラルをJSON数値に、テキスト・リテラルをJSON文字値に変換します。日付およびタイムスタンプのデータ型は、生成されるJSONオブジェクトまたは配列に、ISO8601日付書式に従ったJSON文字列として出力されます。 - format_clause
FORMAT JSONを指定すると、入力文字列がJSONであることを示すため、出力で引用符に囲まれません。
JSON_on_null_clause
この句を使用して、exprがNULLと評価される場合のこのファンクションの動作を指定します。
-
NULLONNULL- この句を指定した場合は、JSONのNULL値が戻されます。 -
ABSENTONNULL- この句を指定した場合は、JSON配列からこの値が省略されます。これはデフォルトです。
JSON_returning_clause
この句を使用して、戻り値のタイプを指定します。次のいずれかです。
-
AL32UTF8文字セットのバイナリ・ラージ・オブジェクトを戻すBLOB。 -
シングルバイト文字またはマルチバイト文字を含むキャラクタ・ラージ・オブジェクトを戻す
CLOB。 -
バイト数または文字数としてサイズを指定する
VARCHAR2。デフォルトは、バイトです。この句を省略するか、size値を指定せずにこの句を指定した場合、JSON_ARRAYはVARCHAR2(4000)型の文字列を戻します。詳細は、「VARCHAR2データ型」を参照してください。SQLでVARCHAR2データ型を指定する場合、サイズを指定する必要があります。ただし、JSON_returning_clauseではサイズを省略できます。 -
BOOLEAN -
JSON -
VECTOR
STRICT
STRICT句を指定して、JSON生成ファンクションの出力が正しいJSONであることを確認します。チェックに失敗すると、構文エラーが発生します。
例については、JSON_OBJECTを参照してください。
例
次の例では、JSONオブジェクト、JSON配列、数値リテラル、テキスト・リテラルおよびNULLからJSON配列を構成します。
SELECT JSON_ARRAY (
JSON_OBJECT('percentage' VALUE .50),
JSON_ARRAY(1,2,3),
100,
'California',
null
NULL ON NULL
) "JSON Array Example"
FROM DUAL;
JSON Array Example
--------------------------------------------------------------------------------
[{"percentage":0.5},[1,2,3],100,"California",null]





