windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)
- windows下mongodb基础玩法系列一介绍与安装
- windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)
- windows下mongodb基础玩法系列二CURD附加一
其中collection类似于数据库中的表,document类似于行,这样一来我们就将内容对比起来记忆学习了。

①单条插入
db.testData.insert({"name":"A","age":18})
②批量插入(直接就是一个js循环,这样看起来是不是很爽,会js应该就可以很好的玩转mongodb看,看来我要努力一点儿)
for(var i = 19 ; i < 28 ; i++) {
db.testData.insert({"name":String.fromCharCode(i+47),"age":i})
}
①整体更新(替换整个文档中除了_id的值,将一个全新的文档作为update的第二个参数)
db.testData.update({"name":"K"},{"name":"K","age":28})
②局部更新(更新一个文档中的特定字段,在这里仅仅介绍了一下$inc/$set)
$inc可以对文档的某个为数字型的值进行增减的操作。
db.testData.update({"name":"K"},{$inc:{"age":72}})
$set 更新文档中字段的值,或者是文档中嵌入式的文档的值
db.testData.update({"name":"K"},{$set:{"age":28}})
③upsert(默认情况下update()没有匹配到文档的时候,就什么也不做,但是如果是upsert(即是update的第三个参数是true的时候),没有匹配到文档得时候,会插入作为第二参数的内容作为一条新的文档)
db.testData.update({"name":"L"},{"name":"L","age":29},true)
④批量更新(这个也是我们常常遇见的问题,但是能够想到的解决方案还是循环更改,按理说这样的效率是比较低的,等后续文档时更新一下这个相关的方法,希望看见这个问题后有好的解决方案的朋友留下一点意见,谢谢)
①$gt,$gte,$lt,$lte,$ne,无特殊(>,>=,<,<=,!=,=)
demo:
db.testData.find({"age":{$gt:20}})
db.testData.find({"age":{$gte:20}})
db.testData.find({"age":{$lt:20}})
db.testData.find({"age":{$lte:20}})
db.testData.find({"age":{$ne:20}})
db.testData.find({"age":20})
②$and,$or,$in,$nin(and,or,in,not in)
demo:
db.testData.find({$and:[{"name":"A","age":18}]})
db.testData.find({$or:[{"name":"A","name":"B"}]})
db.testData.find({"name":{$in:["A","B"]}})
db.testData.find({"name":{$nin:["A","B"]}})
删除所有文档
db.testData.remove({})
上述方法只是从集合中删除了所有的文档,集合本身还是存在的,如果要直接删除集合可以使用一个更实效的方法drop()
删除符合条件的文档
db.testData.remove({"name":"A"})
本文原创博客地址:http://www.cnblogs.com/unofficial 官网地址: www.pushself.com
windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)的更多相关文章
- windows下mongodb基础玩法系列二CURD附加一
windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...
- windows下mongodb基础玩法系列一介绍与安装
windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...
- AB实验的高端玩法系列3 - AB组不随机?观测试验?Propensity Score
背景 都说随机是AB实验的核心,为什么随机这么重要呢?有人说因为随机所以AB组整体不存在差异,这样才能准确估计实验效果(ATE) \[ ATE = E(Y_t(1) - Y_c(0)) \] 那究竟随 ...
- eclipse下使用cygwin的方法(Windows下用eclipse玩gcc/g++和gdb)
明天就回国了,今晚回国前写写如何配置eclipse和CDT.这个配置方法网上讨论不是很多,可能用的人少,毕竟Windows上写C++程序多数喜欢VS,即使写的是Linux程序,很多人仍然会用VS(说只 ...
- windows下Mongodb图形化工具安装及配置
接上篇文章<Windows下Mongodb安装部署.docx> 一.RockMongo 1.RockMongo需要php环境,首先需要搭建php环境,选择采用 下载xampp,这里我用的是 ...
- [转载]windows下mongodb安装与使用整理
windows下mongodb安装与使用整理 一.首先安装mongodb 1.下载地址:http://www.mongodb.org/downloads 2.解压缩到自己想要安装的目录,比如d:\mo ...
- Word 查找替换高级玩法系列之 -- 段首批量添加字符
打开「查找和替换」输入框,按照下图操作: 更多查找替换高级玩法,参看:Word查找替换高级玩法系列 -- 目录篇 未完 ...... 点击访问原文(进入后根据右侧标签,快速定位到本文)
- Word 查找替换高级玩法系列之 -- 把论文中的缩写词快速变成目录下边的注释表
1. 前言 问题:Word写论文如何把文中的缩写快速转换成注释表? 原来样子: 想要的样子: 2. 步骤 使用查找替换高级用法,替换缩写顺序 选中所有文字 打开查找替换对话框,输入以下表达式: 替换后 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
随机推荐
- oracle删除dbf导致的oracle工具不能正常使用
1.使用cmd命令登录Oracle:sqlplus / as sysdba;就可以,中间两个空格.2.删除了dbf导致Oracle工具不能正常使用解决办法(oracle initialization ...
- Java:ConcurrentHashMap
ConcurrentHashMap的目的 多线程环境下,使用Hashmap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap.虽然已经有一个线程安全的Ha ...
- Spring 的配置详解
Bean元素 Spring创建对象的方式 (1)空参构造方式 (2)静态工厂(了解) (3)实例工厂方式 Bean元素进阶 (1)scope属性 a.singleton (2)生命周期属性 Sprin ...
- ABP框架系列之四十一:(Nuget-Packages-Nuget包)
Packages ASP.NET Boilerplate is distributed on nuget. Here, a list of all official packages. Abp Cor ...
- dom4j 创建一个带命名空间的pom.xml 文件
http://xml.apache.org/xalan-j/index.html 需要的jar包 <dependencies> <dependency> <groupId ...
- iOS安装包瘦身的那些事儿
在我们提交安装包到App Store的时候,如果安装包过大,有可能会收到类似如下内容的一封邮件: 收到这封邮件的时候,意味着安装包在App Store上下载的时候,有的设备下载的安装包大小会超过100 ...
- leetcode144-先序遍历非递归实现
二叉树的先序/中序/后序遍历递归/非递归实现,讲的很清楚,其中后序遍历和先序中序的处理有些不一样: https://blog.yangx.site/2016/07/22/Python-binary-t ...
- Java学习笔记28(集合框架二:Iterator迭代器)
Iterator接口,翻译成中文是迭代器 迭代器的概念通俗解释: java中有很多的集合,内部有各种存储方法,取出的方式也各不相同,是否可以有一种通用的方式来获取呢? 这种方式类似for循环遍历, 通 ...
- 实现instanceof关键字
如果用Java的伪代码来表现Java语言规范所描述的运行时语义,会是这样: // obj instanceof T boolean result; if (obj == null) { result ...
- vertical-align css属性
vertical-align 属性设置元素的垂直对齐方式. vertical-align 的属性值: baseline:默认.元素放置在父元素的基线上. sub:垂直对齐文本的下标. super:垂直 ...