行メタデータに対するSQLコマンドの使用

ノート:

この機能は、早期にアクセスしてフィードバックを提供できるように、「プレビュー」ベースで使用可能になりました。これはデモおよび暫定使用のみを目的としています。Oracle Corporationおよびその関連会社は、この機能に関して一切の責任を負わず、いかなる保証もいたしません。また、この機能を使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。

SQLコマンドを使用すると、問合せによって行メタデータを取得でき、WHERE句で行メタデータを使用して行をフィルタリングすることもできます。

ノート:

行メタデータは、APIを介してのみ書き込むことができます。「ユーザー定義の行メタデータの使用」を参照してください。

: 表内のすべての行の行メタデータをフェッチします。
SELECT row_metadata($t) AS RowMetadata FROM stream_acct $t

説明: 前述の問合せでは、stream_acct表のすべての行のメタデータをフェッチしています。

出力:

{"RowMetadata":{"modified_by":"John Doe","reviewed_in":"Q1","update_reason":"Account details updated"}}

: 行メタデータのmodified_byフィールドに基づいてユーザー・アカウントのエピソード情報をフェッチします

SELECT $t.acct_data.contentStreamed[1].seriesInfo[0].episodes[1] AS content FROM stream_acct $t WHERE row_metadata($t).modified_by="John Doe"

説明: 前述の問合せでは、ユーザー・アカウントのエピソード詳細をフェッチし、row_metadata()を使用して、John Doeが変更したレコードをフィルタリングしています。

出力:
{"content":{"date":"2022-03-08","episodeID":30,"episodeName":"Merci","lengthMin":42,"minWatched":42}}

: WHERE句で行メタデータを使用して表からデータを削除します。

DELETE FROM stream_acct $t WHERE row_metadata($t).reviewed_in="Q1"

説明: 前述の問合せでは、stream_acct表から行のメタデータのreviewed_inフィールドの値がQ1である行を削除しています。