MongoDB是由c++语言编写的基于分布式文件存储的数据库 它存储的是类似于json格式的数据,称之为bson。
它能完成mysql等数据库无法完成或者很难完成的任务; 比如说:数据的高并发读写、数据的海量数据存储、数据的高可扩展性、数据的高可用性。 特点:高性能、容易部署、易使用、存储数据非常方便。
首先我们在MongoDB的bin目录的同级下创建 data/db文件,然后将bin目录配置到环境变量中;
a. 找到mongod.exe所在路径,如:D:\MongoDB\Server\4.2\bin b. 将这个路径配置进入环境变量中的path里面去 c. 打开cmd窗口或者powershell窗口 d. 执行命令: mongod.exe --dbpath 数据目录的路径 如: mongod.exe --dbpath d:\data\db
直接在你的命令窗口中执行mongo.exe命令即可
(1) 查看命令:help (2) 查询数据库:show dbs (3) 创建/切换数据:use 数据库名 (4) 显示当前所处的数据库:db (5) 查看数据库的服务地址:db.getMongo() (6) 删除当前数据库:db.dorpDatabase()
(1) 创建集合:db.createCollection(name, options) (2) 查询集合:如果要查看已有集合,可以使用show collections 或 show tables 命令 (3) 删除集合:db.collection.drop();
如果删除成功,返回true,删除失败返回false
(1) 插入一行文档:db.表名.insert(document )
多行: db.表名.insertMany(ducument) db.names.insertMany([{name:“zs”},{name:“ls”}]) (2) 查询所有的文档:db.names.find(); 查询时格式化:db.names.find.pretty() (3) 更新文档:db.names.update({"name":"zs"},{"name":"zs2"}) (4) 删除文档:db.name.remove({'name':'zs'});参数为空对象,就删除所有文档 (5) 条件查询 大于:$ gt----greater than > ; 大于等于:$gte --------- gt equal >=
小于: $lt -------- less than < ; 小于等于: $lte --------- lt equal <=
不等于: $ne ----------- not equal != ; 等于: $eq -------- equal =
如: 查询score大于等于75的文档数据 db.stu.find({score : {$gte : 75}}) (6) 模糊查询:主要是针对字符的
查询 title 包含"你"字的文档:db.表名.find({title:/你/})
查询 title 字段以"教"字开头的文档 db.表名.find({title:/^教/})
查询 title 字段以"教"字结尾的文档db.表名.find({title:/教$/}) (7) 逻辑查询: 逻辑且 如:从集合stu中查询,name包含zs且score值大于98的文档
db.stu.find({"name":"/zs2/", "score":{$gt:98} }).pretty() 逻辑或 db.表名.find($or [{name:"张三"},{age:66}]) 或且:db.表名.find($or [{name:"张三"},{age:66}],"age":{$gte":60}) (8) 查询指定数量的数据 : 只读取stu集合中的前3条数据db.表名.find().limit(3) (9) 从指定位置开始查询: 从第三条开始查询两条数据db.表名.find().limti(2).skip(2) 可以实现分页查询
(10) 排序:db.表名,find().sort({score:1})按分数进行升序排序 -1为降序排序, 1为升序
