目录
一、基础指令
1.启动MongoDB
代码如下(示例):
mongod --dbpath F:\MongoDB\data
视图如下:
2.数据库、集合管理
创建一个数据库study和一个集合learn
代码如下(示例):
use study //如果数据库不存在,则创建数据库,否则切换到指定数据库
db.createCollection("learn") //创建集合
视图如下:
删除集合learn
代码如下(示例):
show collections //查看已存在的集合
db.learn.drop() //删除集合
视图如下:
删除数据库study
代码如下(示例):
show dbs //查看所有数据库
use study //切换到数据库study
db.dropDatabase() //删除数据库
视图如下:
3.文档管理
插入/删除文档:
代码如下(示例):
db.student.insert({Sno:'9512100',Sname:'李勇',Ssex:'男',Sage:20,Sdept:'计算机系'})
//向student集合中插入文档
db.student.remove({Sno:'9512100'}) //移除该文档
db.student.find() //查看集合student的所有文档
视图如下:
添加后
删除后:
插入一条/多条文档:
代码如下(示例):
db.student.insertOne({id:'5',Sno:'9512106',Sname:'西瓜',Ssex:'男',Sage:20,Sdept:'化学系'})
//插入一条文档
db.student.insert([{_id:'6',Sno:'9512107',Sname:'呆瓜',Ssex:'女',Sage:21,Sdept:'化学系'},{_id:'7',Sno:'9512108',Sname:'南瓜',Ssex:'男',Sage:18,Sdept:'物理系'}])
//插入多条文档
视图如下:
插入一条文档
插入两条文档
修改文档:
代码如下(示例):
db.student.update({Sname:'西瓜'},{$set:{Ssex:'女'}}) //将西瓜的性别改为女
db.student.find({Sname:'西瓜'}) //查询西瓜的信息
视图如下:
4.文档查询
模糊查询
查询名字中包含吴的
视图如下:
查询系别以计开头的
查询以学号以2结尾的
组合查询
AND查询,查询计算机系并且年龄为20的
视图如下:
OR查询,查询系别为计算机系或者名字叫张海的
视图如下:
联合查询,查询年龄小于20的或者系别为计算机系并且名字叫张海的
视图如下:
二、聚合管道、索引
1.聚合管道
查询年龄大于19的
代码如下(示例):
db.student.aggregate([{$match:{Sage:{$gt:19}}}])
视图如下:
查询所有计算机系的信息并按年龄倒序排列
代码如下(示例):
db.student.aggregate([{$match:{Sdept:'计算机系'}},{$sort:{Sage:-1}}]) //倒序
db.student.aggregate([{$match:{Sdept:'计算机系'}},{$sort:{Sage:1}}]) //顺序
视图如下:
2.索引
根据年龄创建索引
视图如下: