Way to MongoDB
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:
Way to MongoDB的更多相关文章
- 【翻译】MongoDB指南/聚合——聚合管道
[原文地址]https://docs.mongodb.com/manual/ 聚合 聚合操作处理数据记录并返回计算后的结果.聚合操作将多个文档分组,并能对已分组的数据执行一系列操作而返回单一结果.Mo ...
- 【翻译】MongoDB指南/CRUD操作(四)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...
- 【翻译】MongoDB指南/CRUD操作(三)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...
- 【翻译】MongoDB指南/CRUD操作(二)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关 ...
- 【翻译】MongoDB指南/CRUD操作(一)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(一) 主要内容:CRUD操作简介,插入文档,查询文档. CRUD操作包括创建.读取.更新和删 ...
- CRL快速开发框架系列教程十二(MongoDB支持)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- MongoDB系列(二):C#应用
前言 上一篇文章<MongoDB系列(一):简介及安装>已经介绍了MongoDB以及其在window环境下的安装,这篇文章主要讲讲如何用C#来与MongoDB进行通讯.再次强调一下,我使用 ...
- MongoDB系列(一):简介及安装
什么是MongoDB MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为应用提供可扩展的高 ...
- [原]分享一下我和MongoDB与Redis那些事
缘起:来自于我在近期一个项目上遇到的问题,在Segmentfault上发表了提问 知识背景: 对不是很熟悉MongoDB和Redis的同学做一下介绍. 1.MongoDB数组查询:MongoDB自带L ...
- 用MongoDB分析合肥餐饮业
看了<从数据角度解析福州美食>后难免心痒,动了要分析合肥餐饮业的念头,因此特地写了Node.js爬虫爬取了合肥的大众点评数据.分析数据库我并没有采用MySQL而是用的MongoDB,是因为 ...
随机推荐
- mysql插入多行数据
表结构如图:
- LPCTSTR —— 摘自百度百科
LPCTSTR用来表示字符是否使用UNICODE. 如果程序定义了UNICODE或者其他相关的宏,那么这个字符或者字符串将被作为UNICODE字符串,否则就是标准的ANSI字符串. 类型理解:L,表示 ...
- LoadRunner检查点实战之运行查看器
一.为什么要使用检查点 为什么要使用检查点,那就要说明一下LR如何判断脚本是否执行成功.LR判断脚本是否执行成功是根据服务器返回的状态来确定的,如果服务器返回的HTTP状态为 200 OK ,那么Vu ...
- MathType中如何快速输入空心字母
MathType输入数学公式时非常方便有效的,在文档中涉及到数学公式或者符号时都是使用MathType来进行的,因为它比Office自带的公式编辑器功能更为完善,使用起来更快捷.在数学公式中,在不同的 ...
- Gradle -- buildScript块与allprojects块及根级别的repositories区别
http://blog.sina.com.cn/s/blog_72ef7bea0102vvg3.html
- 用Python获取Linux资源信息的三种方法
方法一:psutil模块 #!usr/bin/env python # -*- coding: utf-8 -*- import socket import psutil class NodeReso ...
- CSDN日报20170411 ——《怎样给自己的私活项目标价》
[程序人生]怎样给自己的私活项目标价 作者:瞬息之间 非常早之前讲过我们"怎么接私活的心得技巧".相信非常多同学听了心里痒痒的.据我认识的(无论是现实生活还是网上接触的)朋友来看. ...
- 帧动画和骨骼json、极速、二进制对比
对比总结: 1. 帧动画的效率最高,但是图片超过一定帧数,资源图片非常大.比较适合帧数少,大量动画存在,要求效率高的场合. 骨骼json效率较低,已经不推荐使用. 骨骼极速,不支持网格等. 骨骼二进制 ...
- [Java][Tomcat]在eclipse中运行tomcat报的一个错误
2008-11-9 16:27:59 org.apache.tomcat.util.digester.SetPropertiesRule begin警告: [SetPropertiesRule]{Se ...
- MySQL备份1356错误提示修复办法
mysqldump备份出现错误提示 mysqldump: Couldn't execute 'SHOW FIELDS FROM `view_videos`': View 'hekegame_video ...