$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个新元素,结果是我们想的这样吗?

果然没错!

最新文章

  1. maven 多模块项目
  2. UVA&&POJ离散概率与数学期望入门练习[4]
  3. MySQL表分区技术
  4. 朝花夕拾-android 从手机选择图片或拍照设置头像
  5. FreeSWITCH的TLS加密
  6. web前端—工作周报
  7. 【JavaScript】JavaScript Promise 探微
  8. Hadoop configration类分析
  9. 数据库(学习整理)----5--Oracle常用的组函数
  10. <转载>div+css布局教程之div+css常见布局结构定义
  11. 常见Android面试题及答案(详细整理)
  12. ruby轻松自删除代码
  13. 数据库MySQL(课下作业)
  14. Spring Tool Suite4(sts)复制粘贴卡顿(ctrl+v, ctrl+c)、按住ctrl也很卡
  15. 为Jupyter只安装目录的扩展包
  16. asp.net core webapi/website+Azure DevOps+GitHub+Docker
  17. Redis配置sentinel模式
  18. 转:Java中的String,StringBuilder,StringBuffer三者的区别
  19. mysql innodb引擎 一次线上死锁分析排查步骤
  20. BZOJ2716 [Violet]天使玩偶(cdq分治+树状数组)

热门文章

  1. Prim && Kruskal
  2. Codeforces 369 C Valera and Elections
  3. bzoj 1588: [HNOI2002]营业额统计(splay入门)
  4. java 代理模式-静态代理与动态代理
  5. c语言实现字符指针(字符串)数组的排序
  6. HTTPS加密协议
  7. Netty源码分析 (八)----- write过程 源码分析
  8. 一、springboot起航
  9. CSS——样式表的引入
  10. 10 (OC)* Coretext