對於SET數據類型: -
ADD - 如果屬性不存在,則該屬性和它的值被添加到該項目。如果屬性不存在, 然後ADD的行爲取決於屬性的數據類型:
如果現有的數據類型是一組,並且如果該值也是一套, 則值被添加到現有的集合。 (這是一個設置操作, 不是數學加法。)例如,如果屬性值爲 set [1,2],並且ADD操作指定爲[3],則最終的 屬性值爲[1, 2,3]。如果添加操作是爲集屬性指定的 ,並且指定的屬性類型爲 與現有集類型不匹配,則會發生錯誤。兩個集合必須具有相同的原始數據類型 。例如,如果現有數據類型是字符串集合 ,則該值也必須是一組字符串。 同樣適用於數字集和二進制集。
實施例: -
首先更新: -
的country
屬性不存在於表中。 updateItem
創建了具有提供的值(IN,UK)的新屬性country
。
var params = {
TableName : "Movies",
Key : {
"yearkey" : 2014,
"title" : "The Big New Movie 2"
},
UpdateExpression : "ADD country :countries",
ExpressionAttributeValues: {
':countries': docClient.createSet(["IN", "UK"])
},
ReturnValues : "UPDATED_NEW"
};
二更新: -
這次updateItem
增加了新的價值 「美」 而忽略了現有值 「IN」。
var params = {
TableName : "Movies",
Key : {
"yearkey" : 2014,
"title" : "The Big New Movie 2"
},
UpdateExpression : "ADD country :countries",
ExpressionAttributeValues: {
':countries': docClient.createSet(["IN", "US"])
},
ReturnValues : "UPDATED_NEW"
};