行メタデータに対する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である行を削除しています。