MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll

时间:2021-06-24 08:43:04

通过db.help()可以查询到关于数据库的操作,一查询发现有很多方法

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll

其中有一个方法为db.getCollection(cname),即通过这一个函数,传入数据库中的一个集合的名称来获取到该集合的一个对象,我们可以编写函数

 

function insertTenRecord(obj){  
var i=0;
while(i++<10){
obj.insert({id:i+1,ame:"number"+i})
}
}
来执行多条数据的插入,

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll


一,修改器$inc

修改器格式{$inc:{filed:value}},该修改器可以用来修改value为数字类型的值,为指定的键对应的数值进行加减

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll


二,修改器$unset

修改器格式{$unset:{filed:1}},该修改器可将指定的键删除,field后面对应的可以填0,也可以填1或其他数值,但效果都是将该键从这条数据中删除

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll


三,修改器$pushhe$pushAll

$push是向数据中添加新的数据,但是{$push:{filed:value}}中的field应为数组类型的,如果field不是数组类型的,就会出错,如果filed不存在,则创建该数组类型并插入数据,而$pushAll是向数据中添加数组数据,例如

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll


四,修改器$addToSet

{$addToSet:{filed:value}}向field目标数组中添加数据,如果目标驻足中已存在value,则什么都不操作,如不存在则添加进去

五,修改器$pop

修改器格式{$pop:{filed:value}},field为数组类型,value为1或者-1,当value为1时,删除指定数组的最后一个值,value为-1 删除指定数组第一个值

MongoDB学习—(5)修改器$inc,$unset,$push,$pushAll,$allToSet,$pop,$pull,$pullAll


六,修改器$pull,$pullAll

修改器{$pull:{field:value}}用于删除指定的field数组中的value数据,{$pullAll:{field:value}}用于将指定的field数组里的多个数值删除。