『MongoDB』集合更新操作
定义
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』集合更新操作的更多相关文章
- python 与 mongodb的交互--更新操作
这里只要讨论python与mongod交互的时候insert的问题: from pymongo import * def insert_func(): try: client_obj= MongoCl ...
- 『动善时』JMeter基础 — 44、JMeter对数据库的更新操作
目录 1.执行一条insert语句 2.insert语句实现参数化 3.一次执行多条insert语句 4.使用Beanshell生成加密数据示例 (1)测试计划内包含的元件 (2)JDBC连接配置组件 ...
- [原创] 【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 ...
- mongodb数据库集合操作
1:更新update update() 方法用于更新已存在的文档.语法格式如下: db.collection.update( <query>, <update>, { upse ...
- 『Python基础-11』集合 (set)
# 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...
- MongoDB系列---集合与文档操作03
MongoDB-——Collection 学习大纲: 1.集合操作 2.文档操作 知识回顾: 上一篇我们讲述了如何对MongoDB的权限和用户进行日常的基本操作,来达到我们对数据库的基本安全保障. 一 ...
- MongoDB 文档的更新操作
在MongoDB中,更新单个doc的操作是原子性的.默认情况下,如果一个update操作更新多个doc,那么对每个doc的更新是原子性的,但是对整个update 操作而言,不是原子性的,可能存在前面的 ...
- mongoDB之集合操作
mongoDB之集合操作 mongoDB中的集合相当于mysql中的表. mongoDB中集合的创建: 第一种方式:不限制集合大小 db.createCollection("集合名称&q ...
- MongoDB——更新操作(Update)c#实现
c#实现 Mongodb存储[文档局部更新] 如下: 递归更新字段 ,构建UpdateDefinition /// <summary> /// 构建更新操作定义 /// &l ...
随机推荐
- luogu P2424 约数和
嘟嘟嘟 求出[L, R]中每一个数的约数再相加必定会超时,所以换一种思路:枚举约数d. 对于一个约数d,能整除他的数可以写成k * d, (1 <= k <= ⌊n / d⌋),因此约数d ...
- 作为PHP开发者请务必了解Composer
Composer是一个非常流行的PHP包依赖管理工具,已经取代PEAR包管理器,对于PHP开发者来说掌握Composer是必须的. 对于使用者来说Composer非常的简单,通过简单的一条命令将需要的 ...
- Maximum Profit
Maximum Profit You can obtain profits from foreign exchange margin transactions. For example, if you ...
- GetClassLoader和GetCallerClass的使用
GetClassLoader是JAVA中用来得到ClassLoader的 JAVA中有以下几种ClassLoader. 1. Bootstrap ClassLoader - GetClassLoad ...
- 【洛谷P1159】排行榜
排行榜 题目链接 看到题解中一个很巧妙的做法: 先确定SAME的位置, 将DOWN的按输入顺序从上往下输出 再将UP的接着从上往下输出 这样便可以保证DOWN的人名次一定下降了 UP的人名次一定上升了 ...
- Python 学习笔记(七)Python字符串(二)
索引和切片 索引 是从0开始计数:当索引值为负数时,表示从最后一个元素(从右到左)开始计数 切片 用于截取某个范围内的元素,通过:来指定起始区间(左闭右开区间,包含左侧索引值对应的元素,但不包含右测 ...
- P1330 封锁阳光大学 DFS+染色
题目链接:https://www.luogu.org/problemnew/show/P1330 这个题有意思,如果能想到染色,就会很简单,但若想不到就很麻烦 要想把一条边封锁,就必须且只能占据这条边 ...
- react初学
react和vue一样都是mvvm的这种开发模式. 下载js文件 引入HTML文件里 <!DOCTYPE html> <html> <head> <scrip ...
- 三、css篇
#这里强烈推荐一本书<css世界>,css第一书. #上面的层叠顺序得记住. 1.align-items justify-content 是flex(弹性盒模型)必须要会的属性,alig ...
- 洛谷 P3952
题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序 ...