mongoDB 是 no-sql 的一种数据库。

创建数据库:

  use dbName  #数据库中如果存在 dbName ,切换到此数据库;如果不存在此数据库,则创建 dbName 数据库!(tip:当有数据插入到数据库中时,dbName 数据库才真正被创建!)

删除数据库:

  db.dbName.drop()

创建集合(即数据表):

  db.createCollection('colName', options)  #其中 options 为可选项。参数 capped ,布尔类型,为 true 时,则创建固定集合,必须指定 size 参数。固定集合指有固定大小的集合,当达到最大值时,会自动覆盖最早文档。参数 autoIndexId ,为 true 时,自动在 _id 字段创建索引。默认 false 。参数 size ,为固定集合指定一个最大值(以字节计)。参数 max ,指定固定集合中包含文档的最大数量。

删除集合:

  db.colName.drop()

插入文档:

  db.colName.insert({key:'value'});  # value 的值可以为字符串、列表、字典。

  db.colName.insert(document)  # 其中 document = ({name:'xsmile',email:'xu1577656@163.com'});

更新文档:

  db.colName.update({'username':'xsmile'},{$set:{'username':'xxxxx'}},options)  # options 参数顺序有 upsert, 不存在 update 更新内容是否插入,默认 false。其次是 multi, 默认为 false,只更新查到的第一条数据,为真时,更新全部符合查询条件进行更新。

  修改器 $set, $inc(对文档的某个值为数字类型的键进行增减操作),$unset, $push, $pop, $upsert, $save

删除文档:

  db.colName.remove({'type':1},options)  # 删除 type 为 1 的全部数据。其中 options 参数有 justOne,默认 false, 为 true 时,只删除一个文档。

查询文档:

  db.colName.find(<query>,<projection>)  # query 查询条件, projection 可选,使用投影操作符指定返回的键。

  db.colName.find(<query>,<projection>).pretty()  # pretty() 方法以格式化的方法显示左右文档。

  db.colName.findOne()   # 它只返回一个文档

  查询时查询条件常需要进行比较,在 mongoDB 中,常用 $lt, $lte, $gt, $gte, $ne 来表示 小于、小于等于、大于、大于等于、不等于!(greater、less、equal)

  eg: db.colName.find({count : {$gt:10}})  # 查询所有 count 值大于 10 的文档

  

  mongoDB AND 条件

  db.work.find({key1 : value1, key2 : value2})  # 传入多个键,每个键以逗号隔开

  mongoDB OR 条件

  db.work.find({$or : [ {key1 : value1, key2 : value2} ]})  # 使用关键字 $or

原创不易,尊重版权。转载请注明出处:http://www.cnblogs.com/xsmile/

mongoDB学习第一天之增删改查的更多相关文章

  1. MongoDB学习day02--数据库增删改查

    (window系统,在cmd命令提示符中使用) 一.数据库使用 管理mongodb数据库:mongo,连接本地数据库,或mongo 127.0.0.1:27017,连接其他服务器:mongo  ip: ...

  2. MongoDB学习day04--NodeJs操作数据库增删改查

    一.在Nodejs中使用Mongodb Nodejs需要引入的包 npm install mongodb --save -dev 或者使用镜像 cnpm install mongodb --save ...

  3. EF学习笔记-1 EF增删改查

    首次接触Entity FrameWork,就感觉非常棒.它节省了我们以前写SQL语句的过程,同时也让我们更加的理解面向对象的编程思想.最近学习了EF的增删改查的过程,下面给大家分享使用EF对增删改查时 ...

  4. python学习之-成员信息增删改查

    python学习之-成员信息增删改查 主要实现了成员信息的增加,修改,查询,和删除功能,写着玩玩,在写的过程中,遇到的问题,旧新成员信息数据的合并,手机号和邮箱的验证,#!/usr/bin/env p ...

  5. MongoDB 之 手把手教你增删改查 MongoDB - 2

    我们在  MongoDB 之 你得知道MongoDB是个什么鬼 MongoDB - 1  中学习了如果安装部署一个 MongoDB 如果没看到我的金玉良言的话,就重新打开一次客户端和服务端吧 本章我们 ...

  6. Node.js、express、mongodb 入门(基于easyui datagrid增删改查)

    前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...

  7. nodejs笔记五--MongoDB基本环境配置及增删改查;

    一.基本环境配置: 1,首先到官网(http://www.mongodb.org/downloads )下载合适的安装包,然后一步一步next安装,当然可以自己更改安装目录:安装完成之后,配置环境变量 ...

  8. MongoDB 数据库的概念以增删改查

    1,MongoDB概念解析: Mongo数据库基本概念是文档,集合,数据库,下表给予介绍 SQL术语概念 MongoDB术语概念 解释/说明 database database 数据库 table c ...

  9. MongoDB简介,安装,增删改查

    MongoDB到底是什么鬼? 最近有太多的同学向我提起MongoDB,想要学习MongoDB,还不知道MongoDB到底是什么鬼,或者说,知道是数据库,知道是文件型数据库,但是不知道怎么来用 那么好, ...

随机推荐

  1. json 拼二维json数组

    js声明数组 以及向数组中添加as移除json数据 JavaScript声明JSON数组的方法: //部分条件,在数据渲上数据要求是数组格式而非json数组格式,取arrayJson.dataList ...

  2. 百度地图定位API,精度提高

    我使用百度定位API DEMO上面好像就可以setCoorType("bd09ll");//百度地图坐标. 然后我找了下从其它坐标体系迁移到百度坐标. 问下: 1.那我还能不能在百 ...

  3. LightOJ 1319 - Monkey Tradition CRT除数互质版

    本题亦是非常裸的CRT. CRT的余数方程 那么定义 则 其中 为模mi的逆元. /** @Date : 2016-10-23-15.11 * @Author : Lweleth (SoungEarl ...

  4. [洛谷P2491] [SDOI2011]消防

    洛谷题目链接:[SDOI2011]消防 题目描述 某个国家有n个城市,这n个城市中任意两个都连通且有唯一一条路径,每条连通两个城市的道路的长度为zi(zi<=1000). 这个国家的人对火焰有超 ...

  5. [洛谷3457][POI2007]POW-The Flood

    洛谷题目链接:[POI2007]POW-The Flood 题意翻译 Description 你手头有一张该市的地图.这张地图是边长为 m∗n 的矩形,被划分为m∗n个1∗1的小正方形.对于每个小正方 ...

  6. Php扩展--protocolbuffers消息打包

    安装/配置 编译安装 wge thttp://pecl.php.net/get/protocolbuffers-0.2.6.tgz tar -zxvfprotocolbuffers-0.2.6.tgz ...

  7. 洛谷P3764 签到题 III

    题目背景 pj组选手zzq近日学会了求最大公约数的辗转相除法. 题目描述 类比辗转相除法,zzq定义了一个奇怪的函数: typedef long long ll; ll f(ll a,ll b) { ...

  8. python初步学习-python数据类型之number(数值)

    数据类型之 Number python number 数据类型用于存储数值. 数据类型是不容许改变的. 这就意味着如果改变 number 数据类型的值,将重新分配内存空间. python支持四种不同数 ...

  9. jq_$.extend和$.fn.extend插件开发和方法的封装

    --------杂谈-------- 随着使用的使用js和jq使用的越来越娴熟,也就是说日常产品经理给的一些需求,已经在自己的能力范围内了.空出来了一点时间,来研究如何优化你的代码, 不管是性能上,还 ...

  10. gpio子系统和pinctrl子系统(下)

    情景分析 打算从两个角度来情景分析,先从bsp驱动工程师的角度,然后是驱动工程师的角度,下面以三星s3c6410 Pinctrl-samsung.c为例看看pinctrl输入参数的初始化过程(最开始的 ...