我将数据存储在list元素中。该列表属性包含多个字段,如年份和名称。有没有什么方法可以删除年份是2018年的行,就像关系数据库一样?
数据以这种方式存储,其中ID是主键,其他一些字段如密码,城市等。以下是数据存储方式。
{
"q1risk" : "0",
"q1targets" : [ ]
}
UpdateItem succeeded:
{
"q2risk" : "100.0",
"q2targets" : [ {
"level" : "Basic",
"year" : "2017",
"name" : "1",
"completed" : "0",
"category" : "US"
}, {
"level" : "Basic",
"year" : "2017",
"name" : "2",
"completed" : "0",
"category" : "US"
}, {
"level" : "Basic",
"year" : "2018",
"name" : "3",
"completed" : "0",
"category" : "US"
} ]
}
答案 0 :(得分:0)
取自this answer to a similar question,根据DynamoDB UpdateExpression documentation,您可以使用REMOVE ListAttribute[index]
从列表中删除单个元素。
但是,似乎没有办法根据条件有条件地删除列表元素。
最小化读/写吞吐量的最佳选择是:
REMOVE
从项目列表属性中删除这些元素。