MongoDB学习笔记

原创 2016年05月30日 21:42:40

脚本交互操作

   

命令

描述

mongod --dbpath

启动数据库

mongo

连接数据库

help

显示帮助

db.help()

数据库级别的帮助

db.foo.help()

集合的帮助

db

显示当前数据库

show dbs

显示所有数据库

show collections

显示当前数据库的集合

show users

显示当前数据库的用户

use dbname

切换数据库

db.getCollection("name")

得到数据库集合

db.CONNECTION_NAME.drop()

删除名为CONNECTION_NAME的集合

  

  

db.test.find()

查询集合所有文档

db.test.findOne()

查询集合一个文档

db.test.find().limit(100)

查询前100个文档

db.test.insert({})

在集合中添加新文档

db.test.update({},{})

在集合中更新文档

db.test.remove({})

在集合中删除文档

db.test.save(doc)

同步doc文档到数据库

……

  

   

   

   

   

   

MongoDB数据类型

数据类型

描述

null

表示空值或不存在

布尔

true 或 false

32位整数

js不支持,在shell中转换为浮点数

64位整数

js不支持,在shell中转换为浮点数

64位浮点数

js支持

字符串

UTF-8

符号

js不支持,在shell中转换为字符串

对象id

文档的12字节的唯一ID

日期

从标准纪元开始的毫秒数,不存储时区

正则表达式

采用js正则表达式

代码

可以包含js代码

二进制数据

shell中无法使用

最大值

BSON包括一个特殊类型,表示可能的最大值

最小值

BSON包括一个特殊类型,表示可能的最小值

未定义

js中的undefined

数组

js中的[]

内嵌文档

js中{"s" : {"a" : "c"}}

   

   

   

   

修改器

   

   

"$set"修改器

   

  1. 插入文档

    db.test.insert({"name" : "liyongjie"})

  2. 使用修改器添加或修改

    db.test.update({"name" : "liyongjie"} , {"$set" : {"age" : 22}})         //添加age22

  3. 修改age

    db.test.update({"name" : "liyongjie"} , {"$set" : {"age":23}})           //修改age23

  4. 使用"$unset"移除age

    db.test.update({"name":"liyongjie"} , {"$unset" : {"age" : 1}})         //移除age

   

   

"$inc"修改器

   

  1. 增加数字类型的字段

    db.test.update({"name" : "liyongjie",{"$inc" : {"age" : 1}}})    //使用负数减少计数

  2. 查询时数据增加1

    db.test.find()

   

   

数组修改器

   

   

  1. "$push"

    db.test.update({"name" : "liyongjie"} , {"$push" : {"friends" : "小红"}})

       

  2. "$addToSet"

    db.test.update({"name" : "liyongjie"} , {"$addToSet" : {"friends" : "小明"}})      //添加不重复的项

    也可以使用"$ne"进行条件过滤,如下:

    db.test.update({"friends" : {"$ne":"小明"}} , {"$push":{"friends":"小明"}})

       

  3. "$each"

    db.test.update({"name":"liyongjie"} , {"$push" : {"friends" : {"$each" : ["小花", "小李"]}}})      //连续添加多项

       

  4. "$pop"

    db.test.update({"name" : "liyongjie"},{"$pop" : {"friends" : 1}})              //从末尾删除数组中的一项

       

  5. "$pull"

    db.test.update({"name" : "liyongjie"} , {"$pull" : {"friends" : "小花"}})          //删除数组中匹配的项

       

  6. 定位操作符"$"

    数组名称(如friends)点下标可以定位到数组某一项,点$可以匹配到第一项

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

   

相关文章推荐

MongoDB学习笔记

  • 2015年01月22日 02:24
  • 10.53MB
  • 下载

MongoDB学习笔记

  • 2013年10月28日 14:52
  • 1.77MB
  • 下载

《Mongodb权威指南》学习笔记 第五章 索引

索引就是用来加速查询的。数据库索引与书籍的索引类似:有了索引就不需要翻遍整本书,数据库则可以直接在索引中查找,使得查找速度能提高几个数量级。在索引中找到条目以后,就可以直接跳转到目标文档的位置。 5...

mongodb学习笔记

  • 2015年03月24日 23:13
  • 90KB
  • 下载

mongodb学习笔记

  • 2015年04月17日 10:17
  • 80KB
  • 下载

[学习笔记] - Ubuntu 下安装MongoDB

MongoDB提供了linux平台上32位和64位的安装包,你可以在官网下载安装 包。下载地址:MongoDB下载安装包,并解压 tgz(以下演示的为 Ubuntu 14.04 下安装) 。 下载安...

mongoDB学习笔记——在C#中查询

1、下载安装 想要在C#中使用MongoDB,首先得要有个MongoDB支持的C#版的驱动。C#版的驱动貌似有很多种,如官方提供的samus。 实现思路大都类似。这里我们用官方提供的mongo-csh...

MongoDB学习笔记4--mongo的数据修改

默认情况下,mongo的修改只会修改找出来的第一条数据,如果要修改查询匹配的所有记录,必须使用multi那个参数。   修改的操作符说明: $inc 以给定的值增长某个字段; $set 替换给...
  • tb12315
  • tb12315
  • 2013年10月08日 14:12
  • 6708

MongoDB学习笔记一ID自增长

概要 MongoDB 的_id字段作为一个主键存在于所有文档的最顶层,_id必须是唯一的,而且总是具有唯一约束的索引。除了唯一约束,你可以在集合中的_id字段上使用任何值, 以下这个指南描...

mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)

MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MongoDB学习笔记
举报原因:
原因补充:

(最多只允许输入30个字)