.delete テーブル レコード - 論理的な削除コマンド
適用対象: ✅Azure データ エクスプローラー
これらのレコードを含むストレージ成果物も削除されることをシステムで保証せずに個々のレコードを論理的に削除するには、次のコマンドを使用します。 このコマンドは、レコードを削除済みとしてマークしますが、必ずしもストレージ成果物からデータを削除するとは限りません。 詳細については、「論理的な削除」に関する記事をご覧ください。
これらのレコードを含むストレージ成果物も削除されることを保証するシステムで個々のレコードを削除するには、「 Data purge」を参照してください。
構文
.delete
[async
] table
TableName records
[with
(
propertyName =
propertyValue [,
...])
] <|
述語
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
async |
string |
指定した場合、コマンドが非同期モードで実行されることを示します。 | |
TableName | string |
✔️ | レコードを削除するテーブルの名前。 |
propertyName, propertyValue | string |
キーと値のプロパティのペアのコンマ区切りのリスト。 サポートされるプロパティを参照してください。 | |
Predicate | string |
✔️ | 削除するレコードを返す述語。クエリとして指定されます。 「注」を参照してください。 |
Note
次の制限は述語に適用されます。
- 述語には、少なくとも 1 つの
where
演算子が必要です。 - 述語では、
extend
、where
、およびproject
演算子のみを使用できます。 - 述語は
externaldata
を使用できません。
サポートされるプロパティ
名前 | 種類 | 説明 |
---|---|---|
whatif |
bool |
true 場合は、実際にレコードを削除せずに、すべてのシャードで削除されるレコードの数を返します。 既定値は、false です。 |
返品
コマンドの出力には、置き換えられたエクステントに関する情報が含まれています。
例: 特定のユーザーのレコードを削除する
特定のユーザーのデータを含むすべてのレコードを削除するには、以下を実行します。
.delete table MyTable records <| MyTable | where UserId == 'X'
例: テーブルから削除されるレコードの数を確認する
実際に削除せずに操作によって削除されるレコードの数を確認するには、whatif
モードでコマンドを実行するときに、RecordsMatchPredicate 列の値を確認します。
.delete table MyTable records with (whatif=true) <| MyTable | where UserId == 'X'
.delete materialized-view レコード - 論理的な削除コマンド
具体化されたビューで論理的な削除を実行する場合は、同じ概念と制限が適用されます。
構文 - 具体化されたビュー
.delete
[async
] materialized-view
MaterializedViewName records
[with
(
propertyName =
propertyValue [,
...])
] <|
述語
構文規則について詳しく知る。
パラメーター - 具体化されたビュー
名前 | タイプ | Required | 説明 |
---|---|---|---|
async |
string |
指定した場合、コマンドが非同期モードで実行されることを示します。 | |
MaterializedViewName | string |
✔️ | レコードの削除元となる具体化されたビューの名前。 |
propertyName, propertyValue | string |
キーと値のプロパティのペアのコンマ区切りのリスト。 サポートされるプロパティを参照してください。 | |
Predicate | string |
✔️ | 削除するレコードを返す述語。 クエリとして指定されます。 |
Note
表に記載されている Predicate に関する同じ制限もここでも適用されます。 バックグラウンドで実行マテリアル化プロセスとの競合が発生した場合、論理的な削除が失敗する可能性があります。 操作を再試行すると、この場合に役立ちます。 競合を回避するには、論理的な削除 実行する前に 具体化されたビューを無効にし、操作が完了したときに再度有効にすることができます。 Predicateでは、関数materialized_view()の使用は許可されていません。
サポートされるプロパティ - 具体化されたビュー
名前 | 種類 | 説明 |
---|---|---|
whatif |
bool |
true 場合は、実際にレコードを削除せずに、すべてのシャードで削除されるレコードの数を返します。 既定値は、false です。 |
例 - 具体化されたビュー
特定のユーザーのデータを含むすべての具体化されたビュー レコードを削除するには:
.delete materialized-view MyMaterializedView records <| MyMaterializedView | where UserId == 'X'
例: 具体化されたビューから削除されるレコードの数を確認する
実際に削除せずに操作によって削除されるレコードの数を確認するには、whatif
モードでコマンドを実行しているときに RecordsMatchPredicate 列の値を確認します。
.delete materialized-view MyMaterializedView records with (whatif=true) <| MyMaterializedView | where UserId == 'X'