您的位置:首页 > 数据库 > Mongodb

MongoDB学习系列11:MongoDB中的修改器

2014-01-25 00:00 218 查看
使用修改器时,"_id"的值不能改变,而整个文档在替换时是可以改变"_id"的。

$set用来修改一个键的值。

$unset用来删除一个键。

$inc用来增加已有键的值,或者在键不存在时创建一个键。只能用于整数、长整数、或者双精度浮点数。

$push往数组里添加东西, $pop从数组中删除元素。

{$pop : { key : 1} }从数据末尾删除一个元素

{$pop : { key : -1} }从数据头部删除一个元素

有的时候需要基于特定条件来删除元素,而不仅仅是位置,此时使用$pull

db.lists.update({},{"$pull":{"todo":"xxx"}})

它会将所有匹配的部分删掉,比如【1,1,2,2】执行pull 1,剩下的就是【2,2】

$ne---不存在时

$addToSet---增加到集合里

$addToSet和$each组合起来,可以添加多个不同的值

比如

db.user.update(
{查询条件},
{"addToSet":
{"emails" : {"$each" : ["value1" , "value2"] } }
}
}


关于数组的定位修改器

1)使用下标,比如comments.0.votes,就是这个意思。0是下标。

2)定位操作符:

db.blog.update(
{查询条件},
{"$set": {"comments.$.author":"jim"}}
)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mongodb 修改器