Amazon dynamodb 在dynamodb表中插入嵌套的attributes数组元素而不检索整个项
如果可能的话,寻找这个问题的答案,而不是寻找重构建议或重新设计,我只需要了解我在这里还缺少什么: 我在dynamodb中有一个现有项目:Amazon dynamodb 在dynamodb表中插入嵌套的attributes数组元素而不检索整个项,amazon-dynamodb,Amazon Dynamodb,如果可能的话,寻找这个问题的答案,而不是寻找重构建议或重新设计,我只需要了解我在这里还缺少什么: 我在dynamodb中有一个现有项目: { "CartId": 321, "UserId": usr555, "CartItems": [ { "ProductId":59999, "Quantity": 1 }, { "ProductId": 58888, "Quantity": 2 } ] } 在我的代码中,我想将另一个嵌套属性插入到上面项目中的数组C
{
"CartId": 321,
"UserId": usr555,
"CartItems": [
{
"ProductId":59999,
"Quantity": 1
},
{
"ProductId": 58888,
"Quantity": 2
}
]
}
在我的代码中,我想将另一个嵌套属性插入到上面项目中的数组CartItems中。我找不到一种不检索整个项目然后插入的方法,这可能会达到KBs大小
我只想在现有嵌套属性中插入一个数组元素,而不必检索该项
我使用的语言是nodejs,函数是DynamoDB.put。UpdateExpression属性支持SET操作,SET操作支持list\u append函数。由于list_append函数操作数必须是list,请将新值包含在列表中,如下所示
response = dynamodb_client.update_item(TableName='your_table',
Key={'CartId':'321'},
UpdateExpression='SET CartItems = list_append(CartItems, :val1)',
ExpressionAttributeValues = {':val1':[{'ProductId':12345, 'Quantity': 100}]})
希望这有帮助