文档章节

『MongoDB』集合更新操作

灰大羊
 灰大羊
发布于 2016/07/05 10:12
字数 511
阅读 0
收藏 0

参考

定义

db.collection.update(query, update, options)

改变一个在集合中已经存在的文档或文档数组。默认的,update()方法更新一个独立的文档。如果multi选项被设置为true(真),这个方法更新匹配条件的所有文档。

方法格式:

db.collection.update(
   <query>,
   <update>,
   { upsert: <boolean>, multi: <boolean> }
)
参数 类型 描述
query 文档 选择器,与find()中的用法一样。
update 文档 改变
upsert 文档、布尔 可选。默认为false。如果为true,则表示“如果文档不存在,则创建集合。”
multi 文档、布尔 可选。默认为false。如果为true,则表示“更改所有符合条件的项目。”

update参数说明

参考

Name Description
$inc 通过指定的数值自增长某个字段的值。
$rename 重命名一个字段
$setOnInsert 当文档在upsert创建期间,设置一个字段的值。对于已经存在的项目的更新不起作用。
$set 在一个已经存在的文档的字段值。
$unset 从一个文档中移除一个字段。

示例

db.products.update( { sku: "abc123" },
                    { $inc: { quantity: 5 } } )

增长sky为abc123的文档的quantity字段的值5次。(如:原为1,增长后为6)

数组操作

Name Description
$ 作为一个占位符来更新一次update操作中的第一个符合条件的元素。
$addToSet 仅当它们在集合中不存在的时候,添加元素到一个已经存在的数组。
$pop 移除一个数组中第一个或最后一个元素。
$pullAll 从一个数组中移除所有元素。
$pull 从一个数组中移除匹配的元素。
$pushAll 不建议使用. 添加所有元素。
$push 添加一个元素。

$push简单说明

格式

db.collection.update( <query>,
                      { $push: { <field>: <value> } }
                    )

示例

db.students.update(
                    { name: "joe" },
                    { $push: { scores: 89 } }
                  )

更改器

Name Description
$each $push和$addToSet的更改操作,为一个数组更新多个附加的项目。
$slice $push的更改操作来限制被更新数组的尺寸。
$sort $push的更改操作,为一个已经存在的数组排序。

© 著作权归作者所有

共有 人打赏支持
灰大羊
粉丝 4
博文 96
码字总数 95147
作品 0
浦东
项目经理
mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、等等)

最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网:https://www.mongodb.com/ MongoDB 是一个基于分布式文件存储的...

Airship
06/01
0
0
Node后台|数据库的安装及使用(简版)

MAC 安装mongoDB 启动 mongoDB 判断mongoDB是否已经开启 关闭 mongoDB的服务 mongodb启动成功后会显示 然后我们去看看node如何连接mongodb node 连接mongoDB需要用到 mongoose 如果连接成功的...

贝一平
05/30
0
0
MongoDB学习心得(整理中)

NoSQL(Not Only SQL)-非关系型数据库,又一种流行的数据库技术。除去复杂、臃肿的结构化语言,简单的几个函数就可以完成增删该处基本操作。NoSQL好比一个灵活的猴子,而SQL就像大笨象了。 ...

cjp路人
2013/11/03
0
0
MongoDB 3.0新特性概述

MongoDB 在 2015年3月3日 跳过了 MongoDB 2.8版本,直接在 MongoDB 2.6版本后,发布了MongoDB 3.0版本。 随后在 2015年3月17日 发布了 MongoDB 3.0.1 版本; 在 2015年4月9日发布了 MongoDB ...

xinsir999
05/02
0
0
8天学通MongoDB——第一天 基础入门

关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合” 就是对应关系数据库中的“表”,“文档”对应“行”。 一: 下载 上M...

BobbyLou
2015/08/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

初级开发-编程题

` public static void main(String[] args) { System.out.println(changeStrToUpperCase("user_name_abc")); System.out.println(changeStrToLowerCase(changeStrToUpperCase("user_name_abc......

小池仔
今天
6
0
现场看路演了!

HiBlock
昨天
16
0
Rabbit MQ基本概念介绍

RabbitMQ介绍 • RabbitMQ是一个消息中间件,是一个很好用的消息队列框架。 • ConnectionFactory、Connection、Channel都是RabbitMQ对外提供的API中最基本的对象。Connection是RabbitMQ的s...

寰宇01
昨天
9
0
官方精简版Windows10:微软自己都看不过去了

微软宣布,该公司正在寻求解决方案,以减轻企业客户的Windows 10规模。该公司声称,企业客户下载整个Windows 10文件以更新设备既费钱又费时。 微软宣布,该公司正在寻求解决方案,以减轻企业...

linux-tao
昨天
19
0
TypeScript基础入门之JSX(二)

转发 TypeScript基础入门之JSX(二) 属性类型检查 键入检查属性的第一步是确定元素属性类型。 内在元素和基于价值的元素之间略有不同。 对于内部元素,它是JSX.IntrinsicElements上的属性类型...

durban
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部