$set
$set update运算符将字段的值设置为指定的值。
set(“quantity”, 11)
$setOnInsert
setOnInsert操作符会将指定的值赋值给指定的字段,如果要更新的文档存在那么setOnInsert操作符会将指定的值赋值给指定的字段,如果要更新的文档存在那么setOnInsert操作符会将指定的值赋值给指定的字段,如果要更新的文档存在那么setOnInsert操作符不做任何处理
setOnInsert(“defaultQuantity”, 10)
$unset
$unset update运算符删除具有给定名称的字段。
unset(“quantity”)
$inc
$inc update运算符将数值字段的值递增指定的值。
inc(“quantity”, 5)
$mul
$mul update运算符将数值字段的值乘以指定的值。
mul(“price”, 1.2)
$rename
$rename update运算符重命名字段
rename(“qty”, “quantity”)
$min
如果指定的值小于字段的当前值,$min update运算符会将字段值更新为指定值。
min(“lowScore”, 150)
$max
如果指定的值大于该字段的当前值,$max update运算符会将该字段的值更新为指定值。
max(“highScore”, 900)
$bit
$bit update运算符对字段的整数值执行位更新。
bitwiseAnd(“mask”, 10)
bitwiseOr(“mask”, 10)
bitwiseXor(“mask”, 10)
$addtoset
addtosetupdate运算符向数组添加值,除非该值已经存在,在这种情况下addtoset update运算符向数组添加值,除非该值已经存在,在这种情况下addtosetupdate运算符向数组添加值,除非该值已经存在,在这种情况下addtoset对该数组不做任何操作。
addToSet(“letters”, “a”)
addEachToSet(“letters”, Arrays.asList(“a”, “b”, “c”))
$pop
$pop update运算符删除数组的第一个或最后一个元素。
popFirst(“scores”)
popLast(“scores”)
$pullall
$pullall update运算符从现有数组中删除指定值的所有实例。
pullAll(“scores”, Arrays.asList(0, 5))
$pull
$pull update运算符从现有数组中删除与指定查询匹配的值或值的所有实例。
pull(“scores”, 0)
pullByFilter(Filters.gte(“votes”, 6))
$push
$push update运算符向数组追加指定的值。
push(“scores”, 89)
pushEach(“scores”, 89, 90, 92)
pushEach(“scores”, new PushOptions().position(0), 89, 90, 92) //每个值89、90和92推送到scores数组的开头
pushEach(“scores”, new PushOptions().sort(-1).slice(5), 89, 90, 92) //将值89、90和92中的每一个都推送到scores数组,按降序对数组进行排序,并删除数组中除前5个元素以外的所有元素
pushEach(“quizzes”, new PushOptions().sortDocument(Sorts.descending(“score”)).slice(-3),
Document(“week” -> 5, “score” -> 8),
Document(“week” -> 6, “score” -> 7),
Document(“week” -> 7, “score” -> 6)) //将每个文档wk:5、score:8、wk:6、score:7和wk:7、score:6推送到测验数组,按分数降序排列数组,并删除数组中除最后3个元素以外的所有元素
=====================================================
组合多个更新运算符:bine
bine(set(“quantity”, 11),
set(“total”, 30.40),
pushEach(“prices”, 4.99, 5.99, 10.99)) //将“quantity”字段的值设置为11,将“total”字段的值设置为30.40,并将每个值4.99、5.99和10.99推送到“prices”字段的数组值:
更多推荐
集锦,操作,数据库,mongodb,nosql
发布评论