[英]Dynamodb Add or Update key in dict
我有一個具有以下結構的 dynamodb 表:
'Items': [
{'user_id': 'myuser',
'owes_to': {
'youruser': '10',
'user3': '20'
}
}]
dynamodb 是否可以在owes_to
中創建一個新的用戶密鑰,或者如果它已經存在添加到該密鑰的值?
例如在兩個調用中:
有可能,更新表達式將類似於:
update_request = {
Key={'user_id': ':id'},
UpdateExpression='SET owes_to.#user_name = if_not_exists(owes_to.#user_name, :default_val) + :val',
ExpressionAttributeNames={
'#user_name': <your_user_name>
}
ExpressionAttributeValues={
':id': 'myuser',
':val': <your_update_value>,
':default_val': 0
}
}
注意if_not_exists(owes_to.#user_name, :default_val)
構造。 如果存在,它將采用用戶的值,如果不存在,則采用:default_val
中指定的值。 有關在官方文檔中添加和更新 map 值的更多信息
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.