1.MongoDB术语/概念:database,collection,document,field,index
SQL术语/概念:database,table,row,column,index

2.
所有存储在集合collection中的数据都是BSON格式
BSON是一种类json的一种二进制形式的存储格式,简称BinaryJSON

3.
1).文档中的键/值对是有序的
2).MongoDB区分类型和大小写
3).数据库名字:应全部小写,最多64字节

4.
db和collection都是延时创建的,在添加document时才真正创建
当第一个文档插入时,集合就会被创建(也就是说,可以不用单独创建集合)

5.常用命令:
1).use DATABASE_NAME
如果数据库不存在,则创建数据库,否则切换到指定数据库
刚创建的数据库并不在数据库的列表中(show dbs),要显示它,需要向新建的数据库中插入一些数据
2).查看所有数据库,可以使用show dbs命令
3).删除数据库
db.dropDatabase()
如:

>use test;
switched to db test
>db.dropDatabase();
{"dropped":"test","ok":}
>show dbs;
admin .000GB
local .000GB

4).删除集合
db.COLLECTION_NAME.drop()
5).使用insert()或save()方法向集合中插入文档,语法如下:
db.COLLECTION_NAME.insert(document)

>show dbs;
admin .000GB
local .000GB
>use test;
switched to db test
>db.col.insert({name:"lxw",age:,tags:["Linux","Python","Network"]})
WriteResult({"nInserted":})
>show collections
col

以上实例中col是集合名,如果该集合不在该数据库test中,MongoDB会自动创建该集合并插入文档。
查看已插入的文档

>db.col.find()
{"_id":ObjectId("585b79a4f1f502dcb0967539"),"name":"lxw","age":,"tags":["Linux","Python","Network"]}

插入文档也可以使用db.col.save(document)命令。如果不指定_id字段save()方法类似于insert()方法。如果指定_id字段,则会更新该_id的数据
6).查询数据
db.COLLECTION_NAME.find()
find()方法以非结构化的方式来显示所有文档,如果需要以易读的方式来读取数据,可以使用pretty()方法,语法格式如下:
db.COLLECTION_NAME.find().pretty()
除了find()方法之外,还有一个findOne()方法,它只返回一个文档
7). 只查询某个指定的字段

> db.mof.find({},{news_time:, _id:})
{ "news_time" : "2017-01-09" }
{ "news_time" : "2017-01-09" }
{ "news_time" : "2017-01-06" }
{ "news_time" : "2017-01-06" }
{ "news_time" : "2017-01-04" }
{ "news_time" : "2017-01-04" }
{ "news_time" : "2016-12-29" }
{ "news_time" : "2016-12-29" }
{ "news_time" : "2016-12-30" }
{ "news_time" : "2016-12-30" }
{ "news_time" : "2016-12-27" }
{ "news_time" : "2016-12-29" }
{ "news_time" : "2016-12-29" }
{ "news_time" : "2016-12-29" }
{ "news_time" : "2016-12-27" }
{ "news_time" : "2016-12-27" }
{ "news_time" : "2016-12-23" }
{ "news_time" : "2016-12-23" }
{ "news_time" : "2016-12-23" }
{ "news_time" : "2016-12-21" }
Type "it" for more

8). 查看某个collection中的document条数:db.COLLECTION_NAME.find().size() 

References:

MongoDB 教程

Way to MongoDB的更多相关文章

  1. 【翻译】MongoDB指南/聚合——聚合管道

    [原文地址]https://docs.mongodb.com/manual/ 聚合 聚合操作处理数据记录并返回计算后的结果.聚合操作将多个文档分组,并能对已分组的数据执行一系列操作而返回单一结果.Mo ...

  2. 【翻译】MongoDB指南/CRUD操作(四)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...

  3. 【翻译】MongoDB指南/CRUD操作(三)

    [原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...

  4. 【翻译】MongoDB指南/CRUD操作(二)

    [原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关 ...

  5. 【翻译】MongoDB指南/CRUD操作(一)

    [原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(一) 主要内容:CRUD操作简介,插入文档,查询文档. CRUD操作包括创建.读取.更新和删 ...

  6. CRL快速开发框架系列教程十二(MongoDB支持)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  7. MongoDB系列(二):C#应用

    前言 上一篇文章<MongoDB系列(一):简介及安装>已经介绍了MongoDB以及其在window环境下的安装,这篇文章主要讲讲如何用C#来与MongoDB进行通讯.再次强调一下,我使用 ...

  8. MongoDB系列(一):简介及安装

    什么是MongoDB MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为应用提供可扩展的高 ...

  9. [原]分享一下我和MongoDB与Redis那些事

    缘起:来自于我在近期一个项目上遇到的问题,在Segmentfault上发表了提问 知识背景: 对不是很熟悉MongoDB和Redis的同学做一下介绍. 1.MongoDB数组查询:MongoDB自带L ...

  10. 用MongoDB分析合肥餐饮业

    看了<从数据角度解析福州美食>后难免心痒,动了要分析合肥餐饮业的念头,因此特地写了Node.js爬虫爬取了合肥的大众点评数据.分析数据库我并没有采用MySQL而是用的MongoDB,是因为 ...

随机推荐

  1. 关于Cocos2d-x中两个场景之间参数的传递

    两个场景之间,有的时候要进行参数传递,如果想通过实例化出一个场景,从而得到属性和方法是不对的想法 你有两个场景,第一场景是用户登录界面,第二场景则是你登录后的界面,你如何将用户登录的值传到第二个场景呢 ...

  2. MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架

    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以使用简单的XML或注解用 ...

  3. final可以修饰类、属性、方法

    final可以修饰类.属性.方法. 当用final修饰类的时候,此类不可被继承,即final类没有子类.这样可以用final保证用户调用时动作的一致性,可以防止子类覆盖情况的发生. 当利用final修 ...

  4. php -- 设计模式 之 单例模式

    实现单例的条件:三私一公 三私:私有化构造方法:不让外部创建对象 私有化克隆方法:不让外部克隆对象 私有静态属性:保存已经产生的对象 一公:公共静态方法:在类内部创建对象 实例: <?php / ...

  5. mysql -- 一次执行多条sql语句

    最近要做一个软件升级,其中涉及到数据库表字段的变动(新增或删除或修改),所有的关于数据库的变动的sql语句都是存放在Sqlupdate.sql文件中,每次升级的时候都需要执行一次Sqlupdate.s ...

  6. 【BZOJ】2555: SubString(后缀自动机)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2555 学到了如何快速维护right值orz (不过这仍然是暴力维护,可以卡到O(n) 首先我们在加一 ...

  7. Think Python: How to Think Like a Computer Scientist

    Think Python: How to Think Like a Computer Scientist:http://greenteapress.com/thinkpython/html/index ...

  8. C#引用传递[转]

    学过C#的人都知道,通过值或通过引用,值类型和引用类型都可以作为方法参数传递.在C#中,不管是值类型或者是引用类型,所有方法参数在默认情况下是通过值传递的. 1)通过值传递值类型 在通过值传递作为方法 ...

  9. MD5骨骼动画模型加载

    前面我们分析了静态模型OBJ格式,桢动画模型MD2,这篇主要分析骨骼动画MD5的一些概念并且实现. 混合桢动画有计算简单,容易实现等优点,但是在需要比较细致的效果时,则需要更多的关键桢,每桢都添加相同 ...

  10. 《Shiro框架》shiro学习中报错解决方法

    [1] 最近在学习shiro,在学习过程中出现了一个问题,报错如下: org.apache.shiro.UnavailableSecurityManagerException: No Security ...