目录
修改操作符 (修改域名操作)
数组修改操作符(*)
数据结构(时间,null)
数组的下标操作方式
索引类型
固定集合
修改操作符
- $set
作用:修改一个域的值,或者增加一个域
示例:
db.class.update({name:"wang"},{$set:{"niubi":666}})
多项操作示例:
db.class.update({name:"wang"},{$set:{age:36,name:"xiaowang"}})
- $unset
作用:删除一个域
示例
db.class.update({name:"wang"},{$unset:{niubi:""}})
- 上面两个一起使用
set和unset同时使用
db.class.update({name:"xiaowang"},{$set:{age:38},$unset:{niubi:""}})
- $setOnInsert
如果第三个参数为true,也就是upsert为true,则表示插入文档的补充内容,如果不插入文档
则不起作用
使用:
db.class.update({name:"laowang"},{$set:{gender:"m"},$setOnInsert:{"tel":'5175151'}},true)
说明:如果laowang存在,则仅仅是修改gender为m,如果不存在,则创建了一个新文档,而且多了一个tel属性
- $inc
加减修改器
示例:将所有人的年龄加1 (如果想减一,写成-1就好)
db.class.update({},{$inc:{age:1}},false,true)
- mul
乘法修改器,参数可以是整数小数负数
示例 将所有人的age乘以2 , 除以2写0.5
db.class.update({},{$mul:{$age:2}})
- $min
如果筛选文档指定域的值小于min,则不修改,大于min的值则修改为min值
相当于给出了一个上限
示例
db.class.update({},{$min:{age:18}},false,true)
- $max
如果筛选文档指定域的值大于max,则不修改,大小于于min的值则修改为min值
相当于给出了一个下限
数组修改操作符
- $push
示