位置: 编程技术 - 正文

MongoDB数据更新方法干货篇(mongo 更新数据)

编辑:rootadmin

推荐整理分享MongoDB数据更新方法干货篇(mongo 更新数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongodb更新数据效率,mongodb更新数据太慢,mongo 更新数据,mongodb更新语句,mongo 更新数据,mongodb更新list,mongo 更新数据,mongodb更新语句,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

数据更新是我们日常操作数据库必不可少的一部分,下面这篇文章就给大家分享了操作MongoDB数据更新的一些干货,对大家具有一定的参考学习价值,一起来学习学习吧。

常用的函数

update(<query>,<update>,<upsert>,<multi>) ,其中<query>表示筛选的条件,<update>是要更新的数据 updateMany() 更新所有匹配到的数据

upsert

upsert是一个布尔类型的数据,如果为true时,当根据query条件没有找到匹配的数据时,就表示插入此条数据,如果为false就表示不插入数据

下面将会在一个空的集合中更新数据

multi

如果这个参数为true,就把按条件查出来多条记录全部更新。默认为false,如果为true的话和updateMany()一样的效果

下面将会更新所有匹配到的数据

字段更新操作符 Field Update Operators

$set

$set用来指定一个键的值。如果这个键不存在,则创建它。注意这里的更新默认是只更新第一条匹配到的数据,如果第一条匹配的数据已经满足修改后的条件,那么将不会执行下面匹配的信息

下面我们将会添加一条信息在数据库中

运行下面的代码,将该用户的兴趣设置为“读书”并添加至文档中(此时文档中hobby键是不存在,该条文档就会创建它)

下面将会修改用户的年龄

下面用$set修改数据类型,将sex设置为1

下面用$set修改内嵌文档,必须指定文档的名字和键值

$unset

从文档中移除指定的键

下面将要删除上面插入的hobby键

$inc

$inc修改器用来增加已有键的值,或者在键不存在时创建一个键$inc就是专门来增加(和减少)数字的。$inc只能用于整数、长整数或双精度浮点数。要是用在其他类型的数据上就会导致操作失败

MongoDB数据更新方法干货篇(mongo 更新数据)

例如?按斡腥朔梦矢貌┪模?锰醪┪牡匿?朗?图?,用键pageViews保存浏览数信息。这个键值上面没有定义过,所以会自动创建一个

下面演示增加和减少

$rename

语法: {$rename: { <old name1>: <new name1>, <old name2>: <new name2>, ... } }

$rename操作符可以重命名字段名称,新的字段名称不能和文档中现有的字段名相同。

下面重新插入一条数据,并且改变这条数据的键的名称

下面将要演示怎样改变内嵌文档的键的名称,注意一定要带上文档的名字

如果重命名的字段字和集合中原有的字段名字相同的话就会覆盖原有的字段名称,那么就会造成数据的丢失

如果指定的字段不存在,那么将不会更新,对原来的字段没有影响

$rename操作符也可以将子文档中键值移到其他子文档中

数组更新操作符 Array Update Operators

只能用在键值为数组的键上的数组操作。$ (query)

语法: { "<array>.$" : value }

当对数组字段进行更新时,且没有明确指定的元素在数组中的位置,我们使用定位操作符$标识一个元素,数字都是以0开始的。

注意:

定位操作符(“$”)作为第一个匹配查询条件的元素的占位符,也就是在数组中的索引值。 数组字段必须出现查询文档中。

向集合中插入两条数据

执行下列操作

$push

如果指定的键已经存在,会向已有的数组末尾加入一个元素,要是没有就会创建一个新的数组。

下面我们将使用$push对该文档添加一条评论信息。

$pull

语法:db.collection.update( { field: <query> }, { $pull: { field: <query> } } );

$pull操作符移除指定字段值为数组,且匹配$pull操作符移除指定字段值为数组,且匹配$pull语句声明的查询条件的所有元素。

执行如下操作

总结

标签: mongo 更新数据

本文链接地址:https://www.jiuchutong.com/biancheng/312636.html 转载请保留说明!

上一篇:MongoDB数据查询方法干货篇(mongodb查询表数据)

下一篇:MongoDB学习之Text Search文本搜索功能(mongodb document)

  • 如何确定合伙企业
  • 售后租回交易有哪几种不同的情况
  • 汇算清缴职工教育费填在
  • 老板住酒店的住宿费发票入什么会计科目
  • 个税申报月份错了怎么改
  • 营业总成本包括管理费用吗
  • 收入与成本不配合
  • 车辆购置税计入成本吗
  • 进料加工余料结转可以跨年吗
  • 计提代扣个人工会经费怎么做账
  • 出口货物索赔如何确认收入
  • 不能税前扣除的费用有哪些
  • 预缴税多交了,税务局退吗
  • 金税盘用途
  • 会计怎么避免坐牢
  • 财务计提个人缴纳社保部分怎么记账?
  • 外贸企业申报出口退税商品名称可以改吗
  • 非征期不允许上报汇总是怎么回事
  • ie浏览器打开后显示已停止工作
  • Windows11安装不了空件怎么处理
  • 财政拨款收入的明细科目
  • 银行存款转定期存款计入什么科目
  • 免费样品费计入什么科目
  • 应收票据冲转是什么科目
  • windows10预览版
  • 应收账款与主营业务收入的比率
  • 非货币性资产交换和债务重组的区别
  • daio.dll 病毒
  • 政府土地购买流程
  • 判断企业存货过多的判断方法
  • 新企业会计准则是哪一年颁布的
  • php parse_str() 函数的定义和用法
  • 自制半成品属于原材料还是库存商品
  • 记一次调试YOLOv5+DeepSort车辆跟踪项目的经过
  • mapbox怎么用
  • yii2框架从入门到精通
  • 农民工工资专用账户打款比例
  • 技术服务费计入成本会计分录
  • 职工福利费的作用
  • 织梦建站详细教程
  • 电脑word怎么学
  • 开房租发票交的税因优惠政策退税如何账务处理?
  • 合伙企业要不要每月做账?报税是不是与一般的有限公司一样,每月申报纳税吗?
  • 一般纳税人应交增值税
  • 以前年度少计成本的税务处理
  • 应付职工薪酬的含义
  • 药品的增值税税率13%还是17%?
  • 收到水电费发票要交印花税吗
  • 个人往对公账户上存款怎么存
  • 行政事业单位支出范围和标准
  • centos 安装程序
  • 恢复注册表的方法
  • 电脑出现系统状态
  • win7系统计算机名称在哪看
  • win7无法删除d盘
  • awk命令详解
  • win10系统自带虚拟机怎么用
  • 5.2光源
  • react service worker
  • EXTjs4.0的store的findRecord的BUG演示代码
  • Android应用程序结构
  • scrollWidth,clientWidth与offsetWidth的区别
  • python虚拟环境管理
  • 置顶的朋友圈屏蔽的人能看到吗
  • unity2018地形
  • node.js原生支持的编码格式
  • angular中的controller
  • onkeyup,onkeydown和onkeypress的区别介绍
  • 微信内置浏览器怎么清除缓存
  • 安卓基于谷歌
  • 23种设计模式全解
  • 移交税务稽查的条件标准
  • 视频号带货个人和个体工商户的区别
  • 主管税务机构
  • 税务局党支部党员大会会议记录
  • 农机作业服务费用 如何开发票
  • 威海行风热线实时收听
  • 经纪代理服务税率1%
  • 湖南国税网上营业厅
  • 南通地税电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设