MongoDB 学习笔记之 $push,$each,$slice组合使用
2024-09-01 11:22:13
$push使用:
使用$push给数组添加2个新成员
db.ArrayTest.updateOne({ "name" : "Bill"},{$push: {"address": {$each: [{"street" : "Xuhui"},{ "street" : "Xingzhuang", "num" : 1}]}}})
查看结果:新数据已经被添加。
$slice在$push中是为了限制数组的总长度,-1说明数组长度为1,-5说明数组长度为5,数组为0说明数组是空。
假设原先address数组中有3个元素:
db.ArrayTest.updateOne({ "name" : "Bill"},{$push: {"address": {$each: [{"street" : "Xuhui7"},{ "street" : "Xingzhuang7", "num" : 2}], $slice: -3}}})
运行结果,我们分析一下应该是总长度为3,由于要新增2个元素,所以最前面的两个元素会被删除,在Xingzhuang6后面会再增加2个新元素,结果是我们想的这样吗?
果然没错!
最新文章
- maven 多模块项目
- UVA&;&;POJ离散概率与数学期望入门练习[4]
- MySQL表分区技术
- 朝花夕拾-android 从手机选择图片或拍照设置头像
- FreeSWITCH的TLS加密
- web前端—工作周报
- 【JavaScript】JavaScript Promise 探微
- Hadoop configration类分析
- 数据库(学习整理)----5--Oracle常用的组函数
- <;转载>;div+css布局教程之div+css常见布局结构定义
- 常见Android面试题及答案(详细整理)
- ruby轻松自删除代码
- 数据库MySQL(课下作业)
- Spring Tool Suite4(sts)复制粘贴卡顿(ctrl+v, ctrl+c)、按住ctrl也很卡
- 为Jupyter只安装目录的扩展包
- asp.net core webapi/website+Azure DevOps+GitHub+Docker
- Redis配置sentinel模式
- 转:Java中的String,StringBuilder,StringBuffer三者的区别
- mysql innodb引擎 一次线上死锁分析排查步骤
- BZOJ2716 [Violet]天使玩偶(cdq分治+树状数组)