【MongoDB学习笔记8】深入MongoDB的更新(update)操作:修改器$set
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,MongoDB中文档存入数据库后用update方法更新文档,update方法有两个参数,例如update(args1,args2)args1是指查询文档的条件;args2是指对查询到的文档进行什么样的
千家信息网最后更新 2025年11月07日【MongoDB学习笔记8】深入MongoDB的更新(update)操作:修改器$set
MongoDB中文档存入数据库后用update方法更新文档,update方法有两个参数,例如
update(args1,args2)
args1是指查询文档的条件;
args2是指对查询到的文档进行什么样的修改;
一、文档替换
> joe1= db.post.findOne({"age":20}){ "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 20}> joe1.age=2121> db.post.update({"id":1},joe1)WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })>修改后的结果:
> joe1= db.post.findOne({"age":21}){ "_id" : ObjectId("54a530c3ff0df3732bac1680"), "id" : 1, "name" : "joe", "age" : 21}>二、使用修改器
1.$set修改器
$set用来指定一个字段的值,如果字段不存在就创建;
> db.post.findOne() { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65 }增加comments的键:
> db.post.update({"id":0}, ... {$set:{"comments":"i love you"}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.post.findOne() { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : "i love you" } >修改comments键的值:
> db.post.update({"id":0}, {$set:{"comments":"i don't love you"}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.post.findOne() { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : "i don't love you" } >
修改comments的值为数组:
> db.post.update({"id":0}, {$set:{"comments":["i love you","or","i don't love you"]}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : [ "i love you", "or", "i don't love you" ] } >
删除comments的值:
> db.post.update({"id":0}, {$unset:{"comments":1}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65 } >2.修改内嵌文档
> db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : { "1" : 1, "2" : 2, "3" : 3 } } > db.post.update({"id":0}, {$set:{"comments.1":4}}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.post.findOne({"id":0}) { "_id" : ObjectId("54a530c3ff0df3732bac167f"), "id" : 0, "name" : "joe", "age" : 65, "comments" : { "1" : 4, "2" : 2, "3" : 3 } } >
文档
修改器
字段
方法
查询
更新
两个
参数
数据
数据库
数组
条件
结果
笔记
学习
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
部队网络安全的教育
互联网时代有哪些科技
北京网络安全大会在线
湖南建筑能耗软件开发
承德嘉诚网络技术
上海口袋云网络技术有限公司
网络安全法自什么时候起形式
pcl2联机无法加入服务器
数据库应用与维护
下载网络安全学院
美发师求职软件开发
关于送气系统软件开发的意义
网络技术证书在哪考
七牛的图片服务器收费
服务器升级安排
广州大一互联网科技
监控平台服务器
北京软件开发者网站
服务器管理器关闭IE
合肥点餐系统软件开发定制公司
ipfs存储服务器加盟
pcl2联机无法加入服务器
贵州燃野软件开发有限公司
邳州海航软件开发创造辉煌
当今网络安全面临的新态势
sql数据库维护技术是什么
js代码与数据库验证
网络安全运营服务工程师岗位
脑控犯罪控制受害者的数据库
淘宝流量点击软件开发