windows下mongodb基础玩法系列
简单说几句
在mongodb中3元素:db(数据库)、collection(集合)、document(文档)
其中collection类似于数据库中的表,document类似于行,这样一来我们就将内容对比起来记忆学习了。
数据格式
MongoDB documents是BSON格式(一种类json的一种二进制形式的存储格式)
insert操作-C

①单条插入

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})
}

update操作-U

①整体更新(替换整个文档中除了_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)

④批量更新(这个也是我们常常遇见的问题,但是能够想到的解决方案还是循环更改,按理说这样的效率是比较低的,等后续文档时更新一下这个相关的方法,希望看见这个问题后有好的解决方案的朋友留下一点意见,谢谢)

find操作-R
mongodb中查询操作提供了db.collection.find()方法来进行查询操作,简单说就是在collection中选出document,也就是通常我们做的在某一个表中查询出来内容是一样一样的。

①$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"]}})
remove操作-D
在MongoDB中, db.collection.remove()是从一个集合中删除文档。

删除所有文档

db.testData.remove({})

上述方法只是从集合中删除了所有的文档,集合本身还是存在的,如果要直接删除集合可以使用一个更实效的方法drop()

删除符合条件的文档

db.testData.remove({"name":"A"})

本文原创博客地址:http://www.cnblogs.com/unofficial 官网地址: www.pushself.com

windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)的更多相关文章

  1. windows下mongodb基础玩法系列二CURD附加一

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  2. windows下mongodb基础玩法系列一介绍与安装

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  3. AB实验的高端玩法系列3 - AB组不随机?观测试验?Propensity Score

    背景 都说随机是AB实验的核心,为什么随机这么重要呢?有人说因为随机所以AB组整体不存在差异,这样才能准确估计实验效果(ATE) \[ ATE = E(Y_t(1) - Y_c(0)) \] 那究竟随 ...

  4. eclipse下使用cygwin的方法(Windows下用eclipse玩gcc/g++和gdb)

    明天就回国了,今晚回国前写写如何配置eclipse和CDT.这个配置方法网上讨论不是很多,可能用的人少,毕竟Windows上写C++程序多数喜欢VS,即使写的是Linux程序,很多人仍然会用VS(说只 ...

  5. windows下Mongodb图形化工具安装及配置

    接上篇文章<Windows下Mongodb安装部署.docx> 一.RockMongo 1.RockMongo需要php环境,首先需要搭建php环境,选择采用 下载xampp,这里我用的是 ...

  6. [转载]windows下mongodb安装与使用整理

    windows下mongodb安装与使用整理 一.首先安装mongodb 1.下载地址:http://www.mongodb.org/downloads 2.解压缩到自己想要安装的目录,比如d:\mo ...

  7. Word 查找替换高级玩法系列之 -- 段首批量添加字符

    打开「查找和替换」输入框,按照下图操作: 更多查找替换高级玩法,参看:Word查找替换高级玩法系列 -- 目录篇 未完 ...... 点击访问原文(进入后根据右侧标签,快速定位到本文)

  8. Word 查找替换高级玩法系列之 -- 把论文中的缩写词快速变成目录下边的注释表

    1. 前言 问题:Word写论文如何把文中的缩写快速转换成注释表? 原来样子: 想要的样子: 2. 步骤 使用查找替换高级用法,替换缩写顺序 选中所有文字 打开查找替换对话框,输入以下表达式: 替换后 ...

  9. Java基础复习笔记系列 七 IO操作

    Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...

随机推荐

  1. Sort Array By Parity II LT922

    Given an array A of non-negative integers, half of the integers in A are odd, and half of the intege ...

  2. VUE 动态给对象增加属性,并触发视图更新。

    在开发过程中,我们时常会遇到这样一种情况:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的. 根据官方文档定义 ...

  3. ubuntu 14.04下搭建esp32开发环境

    esp32是乐鑫出品的一款集成了wifi和蓝牙的集成模块,板上自带两个哈佛结构的Xtensa LX6 CPU双核处理器,本文主要讲解如何在linux下搭建其编译开发环境. 首先ctrl+alt+t打开 ...

  4. shell脚本基础教程

    一.什么是shell: shell解释:引用别人的话说:“Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言.” 简而言之, ...

  5. ASP.NET MVC下使用AngularJs语言(六):获取下拉列表的value和Text

    前面Insus.NET有在Angularjs实现DropDownList的下拉列表的功能.但是没有实现怎样获取下拉列表的value和text功能. 下面分别使用ng-click和ng-change来实 ...

  6. Eclipse 中 SVN 插件的安装与使用

    下载和安装SVN插件 插件在线安装 可以选择在线安装插件的方式,就是使用eclipse里Help菜单的“Install New Software”,通过输入SVN地址,直接下载安装到eclipse里. ...

  7. Bootstrap轮播如何支持移动端左右滑动

    一直觉得bootstrap的轮播用起来很好用,代码简单,又支持响应式,不过从来没想过,也不知道原来bootstrap的轮播竟然不支持在手机上左右滑动 解决方法就是:使用滑动手势js插件:hammer. ...

  8. ElasticSearch权威指南学习(分布式文档存储)

    路由文档到分片 当你索引一个文档,它被存储在单独一个主分片上.Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 进程不能是 ...

  9. Python 基础:分分钟入门

    Python和Pythonic Python是一门计算机语言(这不是废话么),简单易学,上手容易,深入有一定困难.为了逼格,还是给你们堆一些名词吧:动态语言.解释型.网络爬虫.数据处理.机器学习.We ...

  10. source insight 添加 python 支持

    从http://www.sourceinsight.com/public/languages/下载Python的配置文件Python.CLF 选择Options > Preferences,单击 ...