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组合起来,可以添加多个不同的值
比如
关于数组的定位修改器
1)使用下标,比如comments.0.votes,就是这个意思。0是下标。
2)定位操作符:
$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"}} )
相关文章推荐
- SpringMVC学习系列(11) 之 表单标签
- SpringMVC学习系列(11) 之 表单标签
- Android学习系列(11)--App列表之拖拽ListView(下)
- 从零开始学习Node.js系列教程之SQLite3和MongoDB用法分析
- SpringMVC学习系列(11) 之 表单标签
- DDD理论学习系列(11)-- 工厂
- 【MongoDB】从入门到精通mongdb系列学习宝典,想学mongodb小伙伴请进来
- 每天学习一算法系列(11) (求二叉树中节点的最大距离)
- Android学习系列(11)--App列表之拖拽ListView(下)
- Caffe学习系列(11):图像数据转换成db(leveldb/lmdb)文件
- [Android学习系列11]关于Android数据存储的一些事
- SpringMVC 学习系列 (11) 之 表单标签
- [转]Ultra Fractal教程系列11——学习基础技巧03——使用Explore(探索)功能
- struts2系列学习笔记(11)---------------拦截器
- 【MongoDB安装和基础学习系列】
- [寒江孤叶丶的CrossApp之旅_11][入门系列]通过Demo学习CrossApp之SecondViewController篇
- MongoDB系列教程(五):mongo语法和mysql语法对比学习
- SpringMVC学习系列(11) 之 表单标签
- 机器学习实践系列之11 - OpenCV实战车道线检测
- 敏捷开发系列学习总结(11)——Scrum敏捷开发流程的三个角色、四个会议和三个物件