JSON_TRANSFORM
JSON_passing_clause::=
JSON_passing_clause
の詳細は、「JSON_EXISTS条件」を参照してください。
目的
JSON_TRANSFORM
ファンクションを使用して、JSONデータを変更する1つ以上の変更操作を指定することで、入力JSONデータ(またはJSONデータの一部)を変更できます。変更されたJSONを出力として取得します。
ファンクションへの入力は、JSON値を含むSQL式です。たとえば、JSON
型のインスタンス、IS JSON
チェック制約を持つかまたは持たないVARCHAR2
列、またはJSONデータを戻すファンクション・コールを入力に使用できます。
例
例1: タイムスタンプを使用してJSON列を更新する
UPDATE t SET jcol = JSON_TRANSFORM(jcol, SET '$.lastUpdated' = SYSTIMESTAMP)
例2: クライアントにJSONを送信する前に、社会保障番号を削除する
SELECT JSON_TRANSFORM (jcol, REMOVE '$.ssn') FROM t WHERE …
JSON_TRANSFORM_returning_clause
入力データがJSONの場合、出力データ型もJSONです。他のすべての入力型については、デフォルトの出力データ型はVARCHAR2(4000)
です。
例を含むJSON_TRANSFORM
の詳細は、「Oracle SQLファンクションJSON_TRANSFORM」を参照してください。