JSON_ARRAY
JSON_on_null_clause::=
JSON_returning_clause::=
目的
SQL/JSONファンクションJSON_ARRAYでは、その入力として、1つ以上のSQL式を取得し、各式をJSON値に変換して、それらのJSON値を含むJSON配列を戻します。
expr
exprでは、JSONオブジェクト、JSON配列、数値リテラル、テキスト・リテラルまたはNULLと評価される任意のSQL式を指定できます。このファンクションは、数値リテラルをJSON数値に、テキスト・リテラルをJSON文字値に変換します。
FORMAT JSON
この句はオプションで、セマンティクスを明確にするために使用されます。
JSON_on_null_clause
この句を使用して、exprがNULLと評価される場合のこのファンクションの動作を指定します。
-
NULLONNULL- この句を指定した場合は、JSONのNULL値が戻されます。 -
ABSENTONNULL- この句を指定した場合は、JSON配列からこの値が省略されます。これはデフォルトです。
JSON_returning_clause
このファンクションによって戻される文字列のデータ型はVARCHAR2になります。この句により、VARCHAR2データ型のサイズを指定できます。サイズをバイト数として指定する場合はBYTE、サイズを文字数として指定する場合はCHARを使用します。デフォルトはBYTEです。この句を省略するか、この句を指定してsize値を省略した場合、JSON_ARRAYはVARCHAR2(4000)型の文字列を戻します。
詳細は、「VARCHAR2データ型」を参照してください。SQLでVARCHAR2データ型を指定する場合、サイズを指定する必要があります。ただし、JSON_returning_clauseではサイズを省略できます。
例
次の例では、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]

