mongoDB连接
- 找到mongo下载路径中的bin
- 输入mongod --dbpath 数据保存路径(建议打开C盘或D盘创建一个data文件夹,文件夹内创建一个文件夹为想要起的名)
- 输入后看到此信息则为成功,最小化放一边, 不要关闭
- 再打开一个bin路径的cmd输入mongo打开mongo即可在>后输入语法编辑
mongo语法
数据库操作
- show dbs
查看说有数据库 - use name
有则选,无则创建选择 - db.dropDatabase()
删库
集合操作
- db.createCollection(name,options)
name:集合名,字符
options:可选,为对象,可设置属性 - db.name.drop()
删除集合 - show collections
查看所有集合 - db.getCollectionNames()
查看所有集合名称
数据操作
增
- db.name.insertOne([{key:val,key1:val1,key2:val2}]
单条插入 - db.name.insertMany([{key1:val1,key2:value2},{key:val3,key1:val4,key2:val5},{key:val2,key6:val4,key2:val5}])
多条插入
删
- db.name.deleteOne({key:val})
删除单条数据 - db.name.deleteMany({key:val})
删除多条数据 - db.name.deleteMany({})
删除所有数据
改
- db.name.updateOne({key:val},{$set:{key:newVal,key2:newVal2})
改单条 - db.name.updateMany({key:val},{$set:{key:newVal,key2:newVal2})
改多条 - db.name.updateMany({key:val},{$inc:{key1:num}})
自增或自减
查
-
db.name.find()
查所有数据 -
db.name.find().pretty()
格式查询
-
db.name.find({key:val},{userName:1, pass:1})
指定的返回键 -
db.name.find({key:val},{userName:0, pass:0})
不返回的键
指定条件查询({}表示所有数据),并限制字段显示;
1为只显示的数据,0位不限数据,不可{userName:1, pass:0};
_id为默认返回,如果不需要,可主动设置_id:0与其他显示数据可一同设置
分页查询
- db.name.find({key:val}).limit(num).skip(start)
num:表示个数 start:表示起始索引,默认为0 - db.name.find({key:val}).limit(2).skip(2)
两个为一页,从第3个开始数两个
排序查询
- db.name.find({key:val}).sort({key:1})
1升序,-1降序
区间查询
- db.name.find({ key: {$gt:val1, $lt:val2} })
小于val1,大于val2 g t e 、 gte、 gte、lte包含等于
模糊查询
- db.name.find({key:/val/})
查询key中包含val的数据 - db.name.find({key:/^val/})
查询key中以val开头的数据
或查询
- db.name.find({ $or: [{key1:val1},{key2:val2}] })
查询key1为val1或key2为val2的数据
分类查询
- db.name.distinct(“key”)
获取指定字段的所有数据,去重并以数组的形式返回