MongoDB基本shell操作

---------------------MongoDB基本操作---------------------

1、MongoDB创建数据库

use 数据库名:切换到指定的数据库中,在插入第一个条数据的时候,创建对应的数据库。

show dbs:显示所有的数据库名。

db:查看当前数据库的名称。

show collections:查看当前db所有的collections。

db.集合名.insert({"name":"python"}):为指定的集合添加一条数据。

2、MongoDB删除数据库

db.dropDataBase():删除当前数据库。

3、MongoDB创建集合

db.createCollection(name,options):

参数                               类型                  描述

Name                            String               要创建的集合名称

Options                        Document        (可选)指定有关内存大小和索引选项

字段                              类型                   描述

capped                        Boolean            (可选)如果为true,则启用封顶集合。封顶集合是固定大小的集合,当它达到其最大大小,会自 动覆盖最早的条目。如果指定true,则需要也指定size字段。

autoIndexID         Boolean            (可选)如果为true,自动创建索引_id字段, 默认值是false。

size                number            (可选)指定集合最大可使用字节。如果封顶如果是 true,那么你还需要指定这个字段。

max                  number            (可选)指定封顶集合允许在文件的最大数量。Size限制优先于此限制。如果一个封顶集合达到大小size限制,未达到文件的最大数量,MongoDB删除旧的文件。如果您更喜欢使用max,确保为上限的集合所需的大小限制,足以包含文档的最大数量。

例:db.createCollection("log",{ capped : true, size : 5242880, max : 5000 } )

4、MongoDB删除集合

db.集合名.drop()

5、MongoDB数据类型

1、String : 这是最常用的数据类型来存储数据。在MongoDB中的字符串必须是有效的UTF-8。

2、Integer : 这种类型是用来存储一个数值。整数可以是32位或64位,这取决于您的服务器。

3、Boolean : 此类型用于存储一个布尔值 (true/ false) 。

4、Double : 这种类型是用来存储浮点值。

5、Min/ Max keys : 这种类型被用来对BSON元素的最低和最高值比较。

6、Arrays : 使用此类型的数组或列表或多个值存储到一个键。

7、Timestamp : 时间戳。这可以方便记录时的文件已被修改或添加。

8、Object : 此数据类型用于嵌入式的文件。

9、Null : 这种类型是用来存储一个Null值。

10、Symbol : 此数据类型用于字符串相同,但它通常是保留给特定符号类型的语言使用。

11、Date : 此数据类型用于存储当前日期或时间的UNIX时间格式。可以指定自己的日期和时间,日期和年,月,日到创建对象。

12、Object ID : 此数据类型用于存储文档的ID。

13、Binary data : 此数据类型用于存储二进制数据。

14、Code : 此数据类型用于存储到文档中的JavaScript代码。

15、Regular expression : 此数据类型用于存储正则表达式。

6、MongoDB插入文档

插入数据可以使用insert()和save():

db.集合名字.insert(行数据信息)。

例:

db.mongoDBtest.insert(

{

title: ‘MongoDB Overview‘,

description: ‘MongoDB is no sql database‘,

by: ‘tutorials itcast‘,

url: ‘http://www.itcast.cn‘,

tags: [‘mongodb‘, ‘database‘, ‘NoSQL‘],

likes: 100

}

)

7、MongoDB查询文档

1、查询:

db.集合名.find():查询当前集合的数据信息。

db.集合名.findOne():查询当前集合的第一条数据信息。

pretty():结果显示在一个格式化的方式。

2、AND的使用:

在 find() 方法,如果通过多个键分离‘,‘,那么 MongoDB 处理 AND 条件

语法:db.mongoDBtest.find({key1:value1, key2:value2}).pretty()

3、OR的使用

OR条件的基础上要查询文件,需要使用$or关键字。

>db.mongoDBtest.find(

{

$or: [

{key1: value1}, {key2:value2}

]

}

).pretty()

4、AND和OR一起使用

db.mongoDBtest.find({

key1:value1,

$or:[

{key1:value1},{key2:value2}

]

}).pretty()

5、MongoDB limit与skip方法

limit:显示指定多少条数据。

skip:跳过指定多少条数据。

db.mongoDBtest.find().limit(10).skip(100):显示100-110条数据

6、MongoDB 投影

投影意思是查询到的返回结果中,只选择必要的字段,而不是选择一个文档的整个字段。

如果一个文档有5个字段,需要显示只有3个,投影其中3个字段即可。

语法:

db.mongoDBtest.find({},{"name":1,_id:0})

7、MongoDB 排序

语法

sort()方法基本语法如下所示:

>db.集合名.find().sort({KEY:1})

sort()方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而-1是用于降序排列。

8、MongoDB 求Count

使用count()方法对数据统计个数

语法

count()方法基本语法如下所示:

>db.集合名.find({}).count()

或者

db.集合名.count({})

> db.mongoDBtest.find({‘likes‘:{‘$gt‘:20}}).count()

9、MongoDB 求distinct

使用distinct()方法对数据进行去重统计

语法

distinct()方法基本语法如下所示:

>db.集合名.distinct(‘key‘,{})

> db.mongoDBtest.distinct(‘title‘,{‘likes‘:{‘$gt‘:20}})

8、MongoDB更新文档

1、MongoDB 使用 update() 和 save() 方法来更新集合中的文档。

2、语法:

update() 方法的基本语法如下

db.mongoDBtest.update(

<query>,

<update>,

{

upsert: <boolean>,

multi: <boolean>,

writeConcern: <document>

}

)

3、语法中对应的参数介绍:

query : update的查询条件,类似sql update查询内where后面的。

update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的

upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。

multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。

writeConcern :可选,抛出异常的级别。

4、例:

  >db.mongoDBtest.update({‘by‘:‘tutorials itcast‘},{$set:{‘by‘:‘itcast‘}},{multi:true})

9、MongoDB删除文档

1、MongoDB remove()函数是用来移除集合中的文档。

2、语法

基本语法remove()方法如下

db.collection.remove(

<query>,

{

justOne: <boolean>,

writeConcern: <document>

}

)

3、参数说明:

query :(可选)删除的文档的条件。

justOne : (可选)如果设为 true 或 1,则只删除一个文档。默认false

writeConcern :(可选)抛出异常的级别。

4、例:

db.myLimit.remove({"_id" : {$gt:0}},1)

时间: 2024-08-09 06:32:53

MongoDB基本shell操作的相关文章

每篇半小时1天入门MongoDB——2.MongoDB环境变量配置和Shell操作

上一篇:每篇半小时1天入门MongoDB——1.MongoDB介绍和安装 配置环境变量 Win10系统为例 右键单击“此电脑”——属性——高级系统设置——高级——环境变量,添加C:\Program Files\MongoDB\Server\3.0\bin;.注意:要以;隔开各种变量. 这样的话就可以直接在CMD命令窗口中输入mongo 表示环境变量设置成功,并已经连接到默认数据库test中. 我们可以输入mongod --help来查看相关的帮助信息 C:\Users\zouqi>mongod

Mongodb DB shell数据操作

shell命令操作语法和JavaScript很类似,其实控制台底层的查询语句都是用JavaScript脚本完成操作的. Ø 数据库 1.Help查看命令提示 help db.help(); db.yourColl.help(); db.youColl.find().help(); rs.help(); 2.切换/创建数据库 >use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库 3.查询所有数据库 show dbs; 4.删除当前使用数据库 db.dropDatabas

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

[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关注),写确认(写关注) 1 更新文档 1.1 更新 MongoDB提供下列方法用于更新一个集合 db.collection.updateOne() 更新使用指定过滤器匹配到的文档,即使过滤器匹配到多个文档,也只会更新一个文档. 3.2版本新增特性. db.collection.updateMany(

MongoDB 的聚集操作

聚合引言 聚集操作就是出来数据记录并返回计算结果的操作.MongoDB提供了丰富的聚集操作,能够检测和执行数据集上的计算.运行在mongod上的数据聚集简化了代码和资源限制. 像查询一样,在Mongo的聚合操作使用collections作为输入,并返回一个或多个document作为输出. 聚合模式 聚合管道 MongoDB2.2引入了一个新的聚合框架:聚合管道,这是基于数据处理管道概念的模型.文档输入一个多阶段的管道并将文档转化为一个聚合的结果. 最基本的管道阶段提供了过滤器(Filters)来

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

[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(一) 主要内容:CRUD操作简介,插入文档,查询文档. CRUD操作包括创建.读取.更新和删除文档. 创建操作 执行创建或者插入操作可向集合中添加文档.如果集合不存在,插入操作会创建此集合. MongoDB提供下列方法向集合中插入文档: db.collection.insert() db.collection.insertOne()  3.2版本新增 db.collection.inser

MongoDB的CRUD操作

1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的增删改查操作,不同于我们熟悉的关系数据库中的操作.在关系数据库中,比如MySQL,我们通常使用SQL语句对数据库进行增(INSERT)删(DELETE)改(UPDATE)查(SELECT).MongoDB在对数据进行操作过程中,使用的是Document进行数据操作.在对数据库进行操作的时候,使用Do

mongodb常用数据操作

1. shell操作 mongodb默认连接的是test数据库, 输入db,可以看到当前数据库为test, 接下来是常用的数据库操作 ????mongodb存储按照文档方式存储,各种操作均采用json格式串进行, ????????可以理解为. mongodb的集合就是关系数据库的表,集合里面可以装各种类型的数据,包括集合. ? ????show databases:显示数据库以及数据库所占空间. 简写为show dbs; ????use [dbname]: 选择数据库 ????show coll

hbase之python利用thrift操作hbase数据和shell操作

前沿: 以前都是用mongodb的,但是量大了,mongodb显得不那么靠谱,改成hbase撑起一个量级. HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是松散型数据. HBase提供了丰富的访问接口. HBase Shell Java clietn API Jython.Groovy DSL.Scala REST Thrift(Ruby.Pyt

MongoDB命令行操作

1. 连接MongoDB: Mongodb://username:[email protected]/dbname 2. 创建数据库: use dbname:如果数据库不存在则创建数据库,否则切换到指定数据库. 3. 查看所有数据库: show dbs 注: 该命令不会显示新创建的空数据库,若想显示需要向空数据库插入一些数据. MongoDB中默认的数据库为test,若果没有创建新的数据库,集合将存放于test中. 4. 查看当前数据库名: db 5. 删除数据库: db.dropDatabas