MongoDB改动、删除文档的域属性实例

在站点的开发中,可能最初的设计不合理。或者后期业务的变更,会造成文档结构会有些无用的属性。须要去删除或改动。因为MongoDB 是无 Schema 的,不像关系数据库那样列属性定义在表而非记录中,MongoDB 的集合中的每一个文档能够拥有各自不同的域属性。MongoDB 中使用 db.collections.update 改动集合中若干文档的域属性,使用 $set
添加域。$unset 删除域。


删除集合中全部文档的一个域



db.posts.update({}, { $unset: { deleted_at: 1 } }, { multi: true })

1.第一个參数表示选中某些文档,这里为 {} 表示选中当前 posts 集合中的全部文档



2.第二个參数为详细的更新操作,$unset 表示删除域



3.第三个參数为额外选项。{ multi: true } 表示更新全部满足要求的文档,默认仅仅会更新第一个



也能够同一时候删除多个域



db.categories.update({}, { $unset: { deleted_at: 1, desc: 1 } }, { multi: true })

也以同一时候删除和新增域



db.tags.update(

    {},

    { $unset: { deleted_at: 1 }, $set: { slug: 1, description: 1 } },

    { multi: true }

)


本文參考: http://www.lai18.com/content/348300.html ,题外话:有非常大一批人并不看好MongoDB,甚至罗列了MongoDB非常多的问题。事实上MongoDB仅仅是一个工具而已,我们须要的是它能帮我们解决需求,相信MongoDB会越来越好

延伸阅读

1mongoDB入门须要了解的基本知识

2MongoDB新手教程(包括安装、经常使用命令、相关概念、使用技巧、常见操作等)

3MongoDB新手教程之分片技术具体解释

4MongoDB新手教程之经常使用的运维技术介绍

5MongoDB新手教程之C#驱动操作实例

6MongoDB新手教程之主从复制配置具体解释

7MongoDB新手教程之聚合和游标操作介绍

8MongoDB新手教程之细说MongoDB数据库的增删查改操作

9MongoDB新手教程之索引操作浅析

10MongoDB新手教程之Windows下的MongoDB数据库安装图解

11MongoDB查询字段没有创建索引导致的连接超时异常解案例分享

12MongoDB日志文件过大的解决方法

13MongoDB社区版和企业版的区别对比表

14MongoDB中文社区发起人带你学习mongoDB

15对MongoDB数据库性能瓶颈分析

16MongoDB 分页查询的方法及性能

17MongoDB分片存储的集群架构实现

18Mongodb批量删除gridfs文件实例

19Mongodb添加、移除Shard Server实例

20Mongodb添加、移除Arbiter节点实例

21CentOS系统下MongoDB安装及配置教程

22MongoDB改动、删除文档的域属性实例

23Python中的MongoDB基本操作:连接、查询实例

24MongoDB导出查询结果到文件样例

25MongoDB中创建索引须要注意的事项

26MongoDB中的一些坑(最好不要用)

27给MongoDB加入用户权限方法分享

28Linux系统下MongoDB的简单安装与基本操作

29MongoDB教程之基本管理命令

30MongoDB教程之聚合(count、distinct和group)

31MongoDB教程之索引介绍

32MongoDB教程之数据操作实例

33MongoDB教程之入门基础知识

34MongoDB教程之查询操作实例

35MongoDB系列教程(四):设置用户訪问权限

36MongoDB系列教程(八):GridFS存储具体解释

37MongoDB数据库的特色和长处介绍

38MongoDB简单介绍 MongoDB五大特色

39MongoDB系列教程(六):java操作mongodb实例

40MongoDB系列教程(七):MongoDb数据结构具体解释

41MongoDB系列教程(五):mongo语法和mysql语法对照学习

42MongoDB系列教程(二):MongoDB简单介绍

43MongoDB系列教程(一):NoSQL起源

44MongoDB中的MapReduce简单介绍

45MongoDB系列教程(三):Windows中下载和安装MongoDB

46浅谈MongoDB的备份方式

47MongoDB 经常使用命令总结

48MongoDB与MySQL的操作对照表及差别介绍

49MongoDB安全配置具体解释

50MongoDB中的bson介绍和使用实例

MongoDB改动、删除文档的域属性实例的更多相关文章

  1. mongodb remove删除文档的用法

    在看<mongoDB权威指南>中,在删除文档时,出现问题: 书中介绍:采用db.foo.remove()命令则可以删除foo集合中所有的文档,但是在执行该命令时,shell客户端却报错. ...

  2. MongoDB的学习--文档的插入、删除和更新

    最近在看<MongoDB权威指南>,写博客记录一下相关内容~~ 关于安装之类的最基本的就不多说了,从基本操作增删改查开始. MongoDB官网地址:http://www.mongodb.o ...

  3. Mongodb 笔记02 创建、更新和删除文档

    创建.更新和删除文档          1. 插入并保存: 1). 单条插入,insert : db.foo.insert({"bar":"baz"}) 2). ...

  4. MongoDB创建\更新\删除文档操作

     一.插入\创建文档 --当插入一个不存在的文档时,会自己主动创建一个文档 [root@racdb ~]# mongo MongoDB shell version: 2.4.14 connecti ...

  5. MongoDB学习笔记二:创建、更新及删除文档

    插入并保存文档 对目标集使用insert方法插入一个文档: > db.foo.insert({"bar" : "baz"}) 这个操作会给文档增加一个&q ...

  6. Mongodb(3)插入文档,更新文档,删除文档

    insert() 方法 要插入数据到 MongoDB 集合,需要使用 MongoDB 的  insert() 或 save() 方法. 插入文档:db.COLLECTION_NAME.insert(d ...

  7. MongoDB学习笔记-创建、更新、删除文档

    创建     MongoDB中使用insert方法来向集合插入文档,然后保存到MongoDB中.     db.foo.insert({"hehe":"呵呵"} ...

  8. MongoDB 删除文档

    ongoDB remove()函数是用来移除集合中的数据. MongoDB数据更新可以使用update()函数.在执行remove()函数前先执行find()命令来判断执行的条件是否正确,这是一个比较 ...

  9. MongoDB 教程(七):插入文档、更新文档、删除文档

    MongoDB 插入文档 文档的数据结构和JSON基本一样. 所有存储在集合中的数据都是BSON格式 —— BSON是一种类json的二进制形式的存储格式,简称Binary JSON. MongoDB ...

随机推荐

  1. Coursera公开课-Machine_learing:编程作业4

    编程作业: Neural Network Learning 源码上传到gitlab. 对于神经网络的理解也都在源码注释里面了,感兴趣可以看看.

  2. mailto的使用

    用mailto会使用Windows自带的邮件进行发送邮件 方式一,代码如下: [注意:一下表单元素中的 name的值不能改变] <form action="mailto:lisi@12 ...

  3. Android 微信网址分享添加网络图片

    public static void share(String CustomEventData,String title,String titlle_detail,String imgUrl)thro ...

  4. Caffe2:ubuntu修改链接方式ln

    参考:文件和目录命令-文件重定向 ln 使用caffe2,产生了此种情况: from caffe2.python import workspace >>WARNING:root:This ...

  5. POJ_3279_(dfs)(状态)

    ---恢复内容开始--- Fliptile Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8219   Accepted:  ...

  6. Redis 之持久化(rdb、aof)

    Redis的持久化有2种方式   1快照  2是日志 测试aof:

  7. linq 升序排序 空值放后面并根据另一个字段进行多重排序

    List<PickingInfo> res = GetDatas(); var _d = (from e in res select new { aa = e.pickingLibrary ...

  8. 2 Button

    // <summary> /// 设置透明按钮样式 /// </summary> private void SetBtnStyle(Button btn) { btn.Flat ...

  9. java 导入导出的 命令

    $exp lddba/ld_321@192.168.1.3/testora file=E:\db_bak\ld20170219_1testora.dmp log=E:\db_bak\ld2017021 ...

  10. 小实例 hangman game

    代码 #include <bits/stdc++.h> using namespace std; int bk[110]; string sj(int t) { string ans=&q ...