MongoDB常用命令-02

show dbs;–查看所有库

use 库名;–创建库,没有该库就创建库,有就切换为该库

db;–查看当前使用的库

db.dropDatabase();–删除当前库

db.createCollection(name, options);–创建集合

  1. name: 要创建的集合名称
  2. options: 可选参数, 指定有关内存大小及索引的选项
    参数说明:
    options 可以是如下参数:
    在这里插入图片描述
1. show collections;--查看都有哪些集合

2. show tables;--查看都有哪些集合
    
3. db.getCollectionInfos();--查看都有哪些集合
   
4. db.集合名.drop();--删除指定集合
   
5. db.集合名.insert(document);--向集合中插入文档,文档需要时json格式,如db.user.insert({"name":"Gqc"});
   
6. db.集合名.update(
	<query>,
	<update>,
	{
		upsert: <boolean>,
		multi: <boolean>
	}
)
参数说明:
query : update的查询条件,类似sql update查询内where后面的。
update : update的对象和一些更新的操作符(如$,$set...)等,也可以理解为sql update查询内set后面的
upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入该数据,true为插入,默认是false,不插入。
multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
例:
db.student.update({"name":"gqc"},{"age":"18"});--将名为gqc的第一条数据年龄改为18,注意:原有数据中其他列的值都会改为空
db.student.update({"name":"gqc"},{$set:{"age":"18"}});--将名为gqc的第一条数据年龄改为18,只会更改该列,其他列的值不变
db.student.update({"name":"gqc"},{$set:{"age":"18"}},{upsert:true});--更改名为gqc的数据,如果没有则新增
db.student.update({"name":"gqc"},{$set:{"age":"18"}},{multi:true});--将名为gqc的所有数据都更改

7. db.集合名.remove(
	<query>,
	<justOne>
)
参数说明:
query :(可选)删除的文档的条件。
justOne : (可选)如果设为 true 或 1,则只删除一个文档。
db.集合名.remove({});--删除所有数据

8. db.集合名.find(query);--条件查询
db.集合名.find(query).pretty();--格式化查询
db.集合名.find(query).count();--查询有多少条数据

MongoDB 与 RDBMS Where 语句比较

如果你熟悉常规的 SQL 数据,通过下表可以更好的理解 MongoDB 的条件语句查询:
在这里插入图片描述

1. db.集合名.find({key1:value1, key2:value2}).pretty();--多个条件的And查询
例:db.user.find({"name":"gqc","age":18});--类似于where name='gqc' and age=18

2. db.col.find({
	$or: [
		{key1: value1}, {key2:value2}
	]
}).pretty();--多个条件的or查询
例:db.user.find({$or:[{"name":"gqc"},{"name":"xk"}]});--类似于where name='gqc' or name='xxk'

3.and和or连用,例:
db.col.find({"age": {$gt:20}, $or: [{"name": "xk"},{"sex": 1}]}).pretty();--类似于where age>20 and(name='xk' or sex=1)

4.db.集合名.find().skip(开始坐标),limit(显示条数);--分页查询,开始坐标的公式应为(页数-1)*条数

5.db.集合名.find().sort({排序列:排序方式});--将集合排序,排序方式1为升序,-1为降序

6.日期使用:
new Date();--当前时间
ISODate();--当前时间
注:new Date();和ISODate();获得的当前时间是格林尼治时间,与我们相差8小时
ISODate("年-月-日 时:分:秒");--指定日期时间

猜你喜欢

转载自blog.csdn.net/weixin_44102521/article/details/89134425