文档的更新

简介: MongoDB使用`update()`方法修改文档,支持覆盖更新与局部更新。通过`$set`修改指定字段,避免数据丢失;配合`multi: true`实现批量更新;使用`$inc`对数值字段进行增减操作,灵活高效地完成数据修改。

更新文档的语法:
db.collection.update(query, update, options)
//或
db.collection.update(

,

,
{
upsert: ,
multi: ,
writeConcern: ,
collation: ,
arrayFilters: [ , ... ],
hint: // Available starting in MongoDB 4.2
}
)
(1)覆盖的修改
如果我们想修改_id为1的记录,点赞量为1001,输入以下语句:
db.comment.update({_id:"1"},{likenum:NumberInt(1001)})
执行后,我们会发现,这条文档除了likenum字段其它字段都不见了,
(2)局部修改
为了解决这个问题,我们需要使用修改器$set来实现,命令如下,我们想修改_id为2的记录,浏览量为889,输入以下语句:
db.comment.update({_id:"2"},{$set:{likenum:NumberInt(889)}})
(3)批量的修改
更新所有用户为 1003 的用户的昵称为凯撒大帝 。提示:如果不加后面的参数,则只更新符合条件的第一条记录
//默认只修改第一条数据
db.comment.update({userid:"1003"},{$set:{nickname:"凯撒2"}})
//修改所有符合条件的数据
db.comment.update({userid:"1003"},{$set:{nickname:"凯撒大帝"}},{multi:true})
(3)列值增长的修改
如果我们想实现对某列值在原有值的基础上进行增加或减少,可以使用 $inc 运算符来实现。
需求:对3号数据的点赞数,每次递增1
db.comment.update({_id:"3"},{$inc:{likenum:NumberInt(1)}})

相关文章
|
算法 应用服务中间件 Go
国密算法证书及CFCA操作流程
国密算法证书及CFCA操作流程
5410 0
|
安全 中间件 Apache
【Web安全】不安全的HTTP方法
围绕渗透攻防层面来看不安全的HTTP方法漏洞的检测发现修复等手法。
2873 2
|
NoSQL Java Redis
Spring boot整合Redis实现发布订阅(超详细)
Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收信息。微信,微博,关注系统 Redis客户端可以订阅任意数量的频道
10091 0
Spring boot整合Redis实现发布订阅(超详细)
|
11月前
|
机器学习/深度学习 自动驾驶 算法
基于深度学习的交通标志识别系统
本研究聚焦基于深度学习的交通标志识别系统,针对传统方法在复杂环境下识别率低的问题,结合YOLOv8模型与Python技术,实现高效、精准的实时检测,提升智能交通系统的安全性和自动化水平。
|
11月前
|
存储 消息中间件 开发框架
应用架构图
技术架构是将业务需求转化为技术实现的关键过程,涵盖分层设计、技术选型与系统集成。本文详解单体与分布式架构,包括展现层、业务层、数据层及基础层的职责,以及应用间调用关系、外部系统交互与边界划分,为构建清晰的技术体系提供指导。
 应用架构图
|
11月前
|
存储 算法 关系型数据库
MySQL 哈希索引
MySQL哈希索引基于哈希表实现,适用于等值查询(如=、IN),支持常数时间查找,提升检索速度。主要由MEMORY引擎支持,不适用范围查询与排序。适合高频、小数据量场景,需注意哈希冲突与内存限制。
|
11月前
|
消息中间件 人工智能 决策智能
AgentScope x RocketMQ:构建多智能体应用组合
AgentScope是阿里巴巴推出的开发者友好型多智能体框架,支持模块化、可定制的智能体应用开发。通过集成RocketMQ,实现高效、可靠的Agent间通信,助力构建如“智能旅行助手”等复杂协作场景,推动多智能体生态发展。(238字)
|
11月前
|
自然语言处理 关系型数据库 MySQL
MySQL 全文索引
MySQL全文索引支持对CHAR、VARCHAR、TEXT字段进行高效文本搜索,适用于文章、评论等长文本。通过MATCH()与AGAINST()实现自然语言或布尔模式查询,支持分词、停用词过滤和最小词长设置。可创建于建表时或后期添加,适用于搜索引擎、CMS、电商等场景,提升关键词检索效率,但需权衡增删改开销与索引维护成本。(238字)
|
11月前
|
前端开发 开发者
withCredentials 属性
跨域请求中若需发送Cookie,服务器须设置Access-Control-Allow-Credentials: true,并明确指定Access-Control-Allow-Origin为具体域名,不能为星号。前端需在XMLHttpRequest中显式设置withCredentials = true,否则浏览器不会携带Cookie。注意,Cookie遵循同源策略,仅服务器域名下的Cookie可被上传,前端无法通过document.cookie读取跨域Cookie。
|
11月前
|
存储 NoSQL 物联网
MongoDB应用场景
MongoDB适用于社交、游戏、物流、物联网及直播等场景,因其支持海量数据存储、高频读写操作。用户信息、动态、日志等低事务性、高并发数据可高效存取,尤其适合用嵌套结构与地理位置索引优化查询,是大规模非结构化数据存储的理想选择。(238字)

热门文章

最新文章