DynamoDB 用の PartiQL 削除ステートメント
DELETE
ステートメントを使用して、Amazon DynamoDB テーブルにある項目を削除します。
注記
一度に削除できる項目は 1 つだけです。1 つの DynamoDB PartiQL ステートメントを発行して、複数の項目を削除することはできません。複数のアイテムの削除については、「DynamoDB 用の PartiQL を使用してトランザクションを実行する」または「DynamoDB 用の PartiQL を使用してバッチ操作を実行する」を参照してください。
構文
DELETE FROM
table
WHEREcondition
[RETURNINGreturnvalues
] <returnvalues> ::= ALL OLD *
パラメータ
table
-
(必須) 削除する項目を含む DynamoDB テーブル。
condition
-
(必須) 削除する項目の選択基準。この条件は、単一のプライマリキー値を解決する必要があります。
returnvalues
-
(オプション) 削除される前に表示された、項目の属性を取得したい場合には、
returnvalues
を使用します。有効な値は以下のとおりです。-
ALL OLD *
: 古い項目の内容が返されます。
-
戻り値
returnvalues
パラメータが指定されない限り、このステートメントは値を返しません。
注記
DynamoDB テーブルに、DELETE が発行された項目と同じプライマリキーを持つ項目が無い場合、削除した項目を 0 としたうえで、SUCCESS を返します。テーブルに同じプライマリキーを持つ項目があるが、DELETE ステートメントの WHERE 句の条件で false と評価された場合、ConditionalCheckFailedException
が返されます。
例
次のクエリは、"Music"
テーブルの項目を削除します。
DELETE FROM "Music" WHERE "Artist" = 'Acme Band' AND "SongTitle" = 'PartiQL Rocks'
RETURNING ALL OLD *
を追加すると、削除されたデータを返すことができます。
DELETE FROM "Music" WHERE "Artist" = 'Acme Band' AND "SongTitle" = 'PartiQL Rocks' RETURNING ALL OLD *
Delete
ステートメントは、以下を返すようになりました。
{ "Items": [ { "Artist": { "S": "Acme Band" }, "SongTitle": { "S": "PartiQL Rocks" } } ] }