我想删除表中的特定字符串匹配项。例如,Table1
在Foo123Bar
列中有Foo345Bar
和name
。
我想在name
列中删除两个rec。
答案 0 :(得分:0)
以下是我如何解决它,
您需要使用条件扫描表格并使用批量删除或删除项目删除它们。
扫描和查询示例:
http://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/dynamodb-example-query-scan.html
批量删除示例:
http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB.html#batchWriteItem-property
答案 1 :(得分:0)
根据名称列是主键,排序键还是属性,您可以使用不同的方法删除该项。
如果名称列是主键,则可以使用BatchWriteItem直接删除多个项目。如果您使用DynamoDB Document Client,则可以使用batchWrite
method删除表格中的多个项目,如下所示。
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);
});
如果名称列不是私钥,而是索引中的排序键或可查询键,则需要通过查找主键来查询并删除这些项并使用deleteItem
method逐个对键进行排序。
如果名称列是普通属性,则需要扫描和删除而不是查询。
使用DynamoDB Document Client,您可以轻松地使用所需参数调用scan或query。