2017-09-20 79 views

回答

0

基於該名稱列是否是主鍵,分類鍵或一個屬性,你可以對d使用不同的方法選擇該項目。

如果名稱爲列是主鍵,則可以使用BatchWriteItem直接刪除多個項目。如果使用DynamoDB Document Client,則可以使用batchWritemethod刪除表中的多個項目,如下所示。

var params = { 
    RequestItems: { 
    'Table1': [ 
     { 
     DeleteRequest: { 
      Key: { name: 'Foo123Bar' } 
     } 
     }, 
     { 
     DeleteRequest: { 
      Key: { name: 'Foo345Bar' } 
     } 
     } 
    ] 
    } 
}; 

var documentClient = new AWS.DynamoDB.DocumentClient(); 

documentClient.batchWrite(params, function(err, data) { 
    if (err) console.log(err); 
    else console.log(data); 
}); 

如果列不是私有密鑰,但在索引中的排序關鍵字或可查詢鍵,你需要查詢和由一個尋找自己的主鍵和排序鍵一個刪除項目使用deleteItemmethod

如果名稱列是正常屬性,則需要掃描刪除而不是查詢。

使用DynamoDB Document Client您可以輕鬆地調用scanquery,並帶有必需的參數。

+0

謝謝阿山,但名稱不是關鍵,我只是想刪除唯一的項目值,上面的是刪除整個記錄。如何指定條件請在此幫助 – Nathon

+0

然後,您需要掃描並有條件地匹配名稱以查找記錄,找到該記錄後,可以使用該鍵將其刪除。否則,您可以創建全局二級索引以快速找到要刪除的項目及其關鍵字。 – Ashan

相關問題