MongoDB基本操作

栏目: 数据库 · 发布时间: 6年前

内容简介:1、创建数据库如果数据库存在创建数据库,否则切换到指定数据库

1、创建数据库

格式 :usr database_name

如果数据库存在创建数据库,否则切换到指定数据库

> use mydb
switched to db mydb
>

2、查看数据库

查看数据库列表:

格式 :show dbs

注意:如果是刚创建的新数据库并不会出现在数据库列表中,要显示它需要插入数据。

MongoDB基本操作

查看当前使用数据库:

格式 : db

>db
mydb
>

注意

1、在 MongoDB 中默认数据库为test,如果你没有创建新的数据库,集合会放在test数据库中。

2、在MongoDB中,集合只有插入内容后才会创建,也就是说创建集合后需要插入一个文档,集合才会被创建。

三、删除数据库

格式:db.dropDatabase()

MongoDB基本操作

再查看下数据库是否被删除,使用show dbs;

MongoDB基本操作

四、创建集合

格式:db.createCollection(name, options)

参数说明:name 要创建的集合名称,options可选参数,指定有关内存大小及索引选项

MongoDB基本操作

查看已有的集合使用:show collections

MongoDB基本操作

在MongoDB中,插入一些文档时,如果集合不存在,它会自动帮你创建

MongoDB基本操作

五、删除集合:

格式:db.COLLECTIONS_NAME.drop()

成功删除返回true,否则返回false

MongoDB基本操作

六、插入文档

格式:db.COLLECIONS_NAME.insert(document)

db.COLLECIONS_NAME.save(document)

两个格式区别:如果不指定 _id 字段 save() 方法类似于 insert() 方法。如果指定 _id 字段,则会更新该 _id 的数据。

在collection1中插入数据:

MongoDB基本操作

成功插入数据后,使用db.COLLECIONS_NAME.find()查看指定集合数据。其中的"_id"是系统自动生成的

也可以把数据定义成一个变量,插入集合

MongoDB基本操作

首先定义变量document,然后把document当做变量插入collection2

插入多条数据:

格式:db.COLLECTION_NAME.insert([{文档1},{文档2}...])

MongoDB基本操作

(db.collection1.find()后面不要管,shell 的一个bug)

七、更新文档

格式:

db.COLLECTION_NAME.update(

<query>,

<update>,

{

upsert:<boolean>,

multi:<boolean>,

writeConcern:<document>

}

)

参数说明:

    • query  : update的查询条件,类似sql update查询内where后面的。
    • update  : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
    • upsert  : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
    • multi  : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
    • writeConcern  :可选,抛出异常的级别。

MongoDB基本操作

把"_id"为 ObjectId("5b8f21288eca67517610e01b") 对应的name的值改为"嘤嘤嘤"

示例一:

更新满足条件的第一条数据:

db.collection1.update({"age":{$lt:21}},{$set:{"age":"21"}});

在collection1更新 将age小于21岁的age设置为21

示例二:

更新满足条件的全部数据:

db.collection1.update({"age":{$lt:21}},{$set:{"age":21}},false,true);

末尾的false是upsert 的参数,true是multi 的参数。

示例三:

添加第一条数据:

db.collection1.update({"age":{$gt:23}},{$set:{"age":23}},true,false);

在collection1中寻找有没有满足 年龄大于23的,没有找到便添加{"age":23}这个数据,找到则把找到的第一条数据设置成23.

八、删除文档:

db.collection1.deleteOne({"age":"25"});

删除collection1中年龄25的文档。

db.collection1.deleteMany({"age":22});

删除集合中所有年龄22岁的文档。

db.collection1.deleteMany({})

删除文档

九、查询文档

语法:db.collection_name.find(query, projection)

参数说明:

query:可选,使用查询操作符指定查询条件

projection:可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。

栗子1:

MongoDB基本操作

在find()后添加pretty()会以易读方式显示。

栗子2:

MongoDB基本操作

使用and条件查询:

在MongoDB中传入多个键值对,每个键用逗号隔开

格式: db . collection_name . find ({ key1 : value1 , key2 : value2 })

MongoDB基本操作

查找age大于21岁,并且name为name3的文档

使用or条件查询:

在查询条件前添加$or,

格式:db . collection_name . find (

{

$or : [

{ key1 : value1} , {  key2 : value2 }

]

}

)

新鲜的栗子:查找name是name4或者age是22的文档

MongoDB基本操作

limi()方法:

指定读取数量

语法:

db . COLLECTION_NAME . find (). limit ( NUMBER );

栗子:只读取两条数据

MongoDB基本操作

skip方法:

跳过指定数量的数据开始读取

语法:db.collection_name.find().skip(2);

sort方法:

对数据进行排序,用1代表升序,-1代表降序

语法: db . COLLECTION_NAME . find (). sort ({ KEY : 1 })

MongoDB基本操作

对年龄进行降序


以上所述就是小编给大家介绍的《MongoDB基本操作》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大数据日知录

大数据日知录

张俊林 / 电子工业出版社 / 2014-9 / 69.00元

大数据是当前最为流行的热点概念之一,其已由技术名词衍生到对很多行业产生颠覆性影响的社会现象,作为最明确的技术发展趋势之一,基于大数据的各种新型产品必将会对每个人的日常生活产生日益重要的影响。 《大数据日知录:架构与算法》从架构与算法角度全面梳理了大数据存储与处理的相关技术。大数据技术具有涉及的知识点异常众多且正处于快速演进发展过程中等特点,其技术点包括底层的硬件体系结构、相关的基础理论、大规......一起来看看 《大数据日知录》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具