###### $ 存储符合条件的元素下标索引 ######
###### $ 存储符合条件的元素下标索引 ######
一 , $ 关键字
数学比较符:
$gt : 大于 db.user.find({age:{$gt: 73}})
$gte: 大于等于
$lt : 小于
$lte: 小于等于
$eq : 等于
: 等于
二 , $修改器
1.$inc : Python中的 变量 += 1 , 将查询到的结果 加上某一个值 然后保存
例 : 将分数为59分的加十分 update({"score":59},{$inc:{"score":10}})
把69分改为59分 update({"score":59},{$inc:{"score":-10}})
2.$set 修改
例 : 把 "score" 为 20 分的 "score" 赋值为 59 分 update({"score":59},{$set:{"score":-10}})
3. $unset : 用来删除Key(field)的 (删除字段)
例: 删除分数为59分的name update({"score":59},{$unset:{"name":1}})
4. $push : 它是用来对Array (list)数据类型进行 增加 新元素的,相当于我们大Python中 list.append() 方法 , $push 是在 Array(list) 的尾端加入一个新的元素 {$push : {"test_list" : 6}}
例 : 将 "score" 为 100 的Document 中"test_list" 添加一个 6 updateMany({"score":100},{$push:{"test_list":6}})
5 , $pushAll 迭代增加,相当于list中的extend ,在最后追加数据 :db.user.updateOne({"name":"ywb"},{$pushAll: {"hobby":[1,2,3]}})
6 . $pull 就是指定删除Array中的某一个元素,相当于list中的remove,只要满足条件,会把数组中所有满足条件的数据都删掉
例 : 把我们刚才$push进去的 6 删除掉 updateMany({"score":100},{$pull:{"test_list":6}})
7 , $pop : 指定删除Array中的第一个 或 最后一个 元素,相当于list中的pop
例 : 删除"score" 等于 100 分 test_list 的最后一个元素 updateMany({"score":100},{$pop:{"test_list":1}})
删除"score" 等于 100 分 test_list 的第一个元素 updateMany({"score":100},{$pop:{"test_list":-1}})
=======================================================================================
$修改器:
$set : 暴力修改
$unset : 暴力删除字段 db.user.updateOne({"name":"ywb"},{$unset:{"hobby":1}})
$inc : 引用增加 在原有值的基础上增加 db.user.updateMany({},{$inc:{age:1}})
array修改器:
$push 增加元素 :db.user.updateOne({"name":"ywb"},{$push:{"hobby":"jwb"}})
$pull 删除元素 :db.user.updateOne({"name":"ywb"},{$pull:{"hobby":"jwb"}})
$pushAll 迭代增加 :db.user.updateOne({"name":"ywb"},{$pushAll: {"hobby":[1,2,3]}})
$pop 删除最后一条数据/第一条 :
最后一条 db.user.updateOne({"name":"ywb"},{$pop:{"hobby":1}})
第一条 db.user.updateOne({"name":"ywb"},{$pop:{"hobby":-1}})
$ 字符:
["hj","tt",1,2] # {"hobby":"hj"} hj 是hobby列表中的第0个元素 就把 0 这个数据放在了 $ 中
db.user.updateMany({hobby:"hj"},{$set:{"hobby.$":"喝酒"}})
###### $ 存储符合条件的元素下标索引 ######
Object操作
db.user.updateOne({"kecheng.name":"python"},{$set:{"kecheng.price":19800}})
db.user.updateOne({"kecheng.name":"python"},{$inc:{"kecheng.price":500}})
Array中的Object
db.user.updateOne({"hobby.age":84},{$set:{"hobby.$.age":73}})
Object中的Array
db.user.updateOne({"kecheng.class":15},{$set:{"kecheng.class.$":20}})
浙公网安备 33010602011771号