目录
一、数据库操作
1、创建数据库操作
2、查看当前有哪些数据库
3、查看当前在使用哪个数据库
4、删除数据库
二、集合操作
1、查看有哪些集合
2、删除集合
3、创建集合
三、文档基本操作
1、插入数据
2、查询数据
3、删除数据
4、修改数据
四、文档分页查询
五、文档其他查询
1、正则条件查询(模糊查询)
2、比较查询
3、包含查询(in)
4、条件查询
一、数据库操作
1、创建数据库操作
use 数据库名 # 如果该数据库存在,则该命令变为使用该数据库
2、查看当前有哪些数据库
show dbs # 也可以使用show databases进行查看
3、查看当前在使用哪个数据库
db
4、删除数据库
db.dropDatabase() # 将当前数据库删除
二、集合操作
1、查看有哪些集合
show collections
2、删除集合
db.name.dropCollection() # 将名为name的集合删除
3、创建集合
集合的创建有两种方式:显示创建、隐式创建,其中隐式创建是在进行文档插入时自动创建出的集合,在下文提及,这里先学习显示创建
db.createCollection(name) # 创建出一个名为name的集合
三、文档基本操作
1、插入数据
db.collection.insert(data)
# 将数据插入collection中此处的collection是具体的集合名称,如果该集合不存在于数据库,则会隐式的创建出该集合并将数据插入
db.collection.insertMany([{数据1},{数据2}]) # 将多个数据插入
示例:db.person.insert({"username":"zs","age":"10"})
2、查询数据
db.collection.find() # 将数据全部查询
db.collection.find({username:"zs"}) # 根据条件进行查询 db.collection.find({username:"zs"},{username:1,_id:0}) # 投影查询,其中1表示显示字段,0表示不显示该字段
3、删除数据
db.collection.remove({}) # 全部删除
db.collection.remove({_id:"111"}) # 将id为111的数据删除
4、修改数据
db.collection.update({userid:"1"},{username:"zs"}) # 覆盖修改,将userid为1的数据修改为username:"zs"},这种修改方式会导致其他字段消失,仅留下第二个参数的数据
db.collection.update({userid:"1"},{$set:{username:"zs"}}) # 这种修改会将userid为1的第一条数据中的username这一个字段修改为zs,其余字段不会被删除
db.collection.update({userid:"1"},{username:"zs"},{multi:true}) # 这种修改会将userid为1的所有数据的username进行修改
db.collection.update({userid:"1"},{$inc:{count:NumberInt(1)}}) # 会将userid为1的用户的count字段自增1
四、文档分页查询
db.collection.count(条件)# 统计该集合中的数据条数,如果不加条件则是全部数据的条数
db.collection.find(条件).skip(数值m).limit(数值n) # 指的是查询符合条件的数据中跳过m条后取n条数据返回
db.collection.find(条件).sort({userid:1,id:-1}) # 其中1指的是按照userid升序 -1指的是按照id降序
五、文档其他查询
1、正则条件查询(模糊查询)
db.collection.find({username:/ss/}) # 查询集合里username中包含ss的数据
db.collection.find({username:/^张/}) # 查询集合里username以张开头的数据
2、比较查询
db.collection.find({count:{$gt:NumberInt(30)}) # 查询集合中count字段值大于30的数据
< : $lt
<= : $lte
> : $ gt
>= :$gte
!= : $ne
3、包含查询(in)
db.collection.find({count:{$in:[11,12]}}) # 查询集合里count是11,12的数据
如果是排除11与12则使用$nin
4、条件查询
db.collection.find({$and[{条件1},{条件2}]})
db.collection.find({$or[{条件1},{条件2}]})