参考

定义

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的更改操作,为一个已经存在的数组排序。

『MongoDB』集合更新操作的更多相关文章

  1. python 与 mongodb的交互--更新操作

    这里只要讨论python与mongod交互的时候insert的问题: from pymongo import * def insert_func(): try: client_obj= MongoCl ...

  2. 『动善时』JMeter基础 — 44、JMeter对数据库的更新操作

    目录 1.执行一条insert语句 2.insert语句实现参数化 3.一次执行多条insert语句 4.使用Beanshell生成加密数据示例 (1)测试计划内包含的元件 (2)JDBC连接配置组件 ...

  3. [原创] 【2014.12.02更新网盘链接】基于EasySysprep4.1的 Windows 7 x86/x64 『视频』封装

    [原创] [2014.12.02更新网盘链接]基于EasySysprep4.1的 Windows 7 x86/x64 『视频』封装 joinlidong 发表于 2014-11-29 14:25:50 ...

  4. mongodb数据库集合操作

    1:更新update update() 方法用于更新已存在的文档.语法格式如下: db.collection.update( <query>, <update>, { upse ...

  5. 『Python基础-11』集合 (set)

    # 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...

  6. MongoDB系列---集合与文档操作03

    MongoDB-——Collection 学习大纲: 1.集合操作 2.文档操作 知识回顾: 上一篇我们讲述了如何对MongoDB的权限和用户进行日常的基本操作,来达到我们对数据库的基本安全保障. 一 ...

  7. MongoDB 文档的更新操作

    在MongoDB中,更新单个doc的操作是原子性的.默认情况下,如果一个update操作更新多个doc,那么对每个doc的更新是原子性的,但是对整个update 操作而言,不是原子性的,可能存在前面的 ...

  8. mongoDB之集合操作

    mongoDB之集合操作 mongoDB中的集合相当于mysql中的表. mongoDB中集合的创建: 第一种方式:不限制集合大小   db.createCollection("集合名称&q ...

  9. MongoDB——更新操作(Update)c#实现

    c#实现 Mongodb存储[文档局部更新] 如下: 递归更新字段  ,构建UpdateDefinition   /// <summary>   /// 构建更新操作定义   /// &l ...

随机推荐

  1. 去除a标签的下划线

    a:link ,a:visited,a:hover,a:active { text-decoration: none;}

  2. java实现权重随机算法

    权重随机算法在抽奖,资源调度等系统中应用还是比较广泛的,一个简单的按照权重来随机的实现,权重为几个随机对象(分类)的命中的比例,权重设置越高命中越容易,之和可以不等于100: 简单实现代码如下: im ...

  3. 【题解】洛谷P1731 [NOI1999] 生日蛋糕(搜索+剪枝)

    洛谷P1731:https://www.luogu.org/problemnew/show/P1731 思路 三重剪枝 当前表面积+下一层表面积如果超过最优值就退出 当前体积+下一层体积如果超过总体积 ...

  4. Xcode DeviceSupport

    问题:Could not locate device support files. This iPhone 6s is running iOS 12.1 (16B5059d), which may n ...

  5. 两台电脑在不同情况下ping的情况

    两台计算机(交叉连接) 同一网段 ,可以ping通.不同网段,不可以 两台计算机通过一台交换机连接 同一网段 ,可以ping通.不同网段,不可以.同一网段,同一Vlan,不可以. 综上:跨网段通信,必 ...

  6. Angularjs基础(十二)

    ng-model-options 描述:规定如何更新模型 实例: 在失去焦点时绑定输入框的值scope 变量中. <div ng-app="myApp" ng-control ...

  7. 揭开redux,react-redux的神秘面纱

    16年开始使用react-redux,迄今也已两年多.这时候再来阅读和读懂redux/react-redux源码,虽已没有当初的新鲜感,但依然觉得略有收获.把要点简单写下来,一方面供感兴趣的读者参考, ...

  8. baidu 地图 鼠标移上显示标签 鼠标离开隐藏标签

    为了解决 label太多,文字会重叠看不清 所以提出这种办法 核心代码 1,创建的时候 将label设置为隐藏 2,通过百度地图监听事件 ,  mouseover或onmouseover 触发显示 3 ...

  9. linux系统下病毒排除思路

    1.top查看是否有特别吃cpu和内存的进程,病毒进程kill是杀不死的,因为ps命令被修改 2.ls -la /proc/病毒进程pid/  pwd为病毒进程程序目录 一般在/usr/bin下 3. ...

  10. vue $set修改数组

    看了别人写的,自己简单写一下自己的理解. 因为 JavaScript 的限制,Vue.js 不能检测到下面数组变化,所以,想要正常是不能通过操作数组来渲染dom的,解决的方法是通过set方法, 在组件 ...