Mongodb启动
Mongod --dbpath=E:\softwareData\db
操作数据库
- show dbs : 可以查看当前有几个数据库(数据库必须有内容,才能显示出来)
- db / db.getName() : 查看当前在哪个数据库下
- db.stats() : 查看db的状态
- db.version() : 查看db的版本
- db.getMongo() : 查看主机的名字
- db.dropDatabase() : 删除当前数据库
- use local : 切换到local数据库
- help : 看mongodb的方法
- db.help() : 看数据库的方法
- db.test.help() : 看test数据库的方法
- bd.test.find().help() : 看find()方法下的方法
操作集合
- db.createCollection('musiclist ‘) 创建一个集合
- db.getCollection('musiclist’) 查看musiclist集合
- db.getCollectionNames() : 查看当前数据下的所有集合
- show collections : 可以查看现在有多少个集合
- db.printCollectionStats() : 查看集合的状态
- db.musiclist.drop(); 删除集合
增删改查
查:
- db.集合名.find() : 可以查看到集合中具体的文档数据内容
- db.集合名.find().count() : 可以查看这个集合的文档个数
- db.集合名.find({"_id":""}) : 可以通过参数来进行筛选
- db.集合名.find({"_id":""},{'_id':1,'name':0}) : 可以通过参数来进行筛选 控制显示的字段 1代表显示此字段
- db.集合名.find({"_id":""},{'name':0}) : 可以通过参数来进行筛选 控制显示的字段 0代表排除此字段
- db.集合名.find({"_id":/users/}) : //进行模糊匹配 如果是变量可以用 db.集合名.find({'_id':new RegExp(users)})
- db.集合名.find({},{name:1,age:1}) : 查询指定字段的数据 类似于sql中的 select name,age from musiclist
- db.集合名.find().sort({age : 1}) age为1时升序 为-1降序
- db.集合名.find().limit(5) : 前5条
- db.集合名.find().skip(10) : 跳过10条 一般limit和skip一起使用,可以做分页的处理
- db.集合名.findOne()
增:
- db.集合名.insert()可添加一条也可添加多条,添加多条的写法跟insertMany相同
- db.集合名.insertMany() db.musiclist.insertMany([{name:"烦恼歌"},{name:"红尘客栈"}])
- db.集合名.save() db.musiclist.save({name:"异乡人"})
改:
- db.集合名.update({},{$set:{users:"张杰"}}) 修改第一条数据 update第一个参数为筛选条件,如果没有筛选条件可设置成{}
- db.musiclist.update({},{$set:{users:"张杰2"}},{multi:true}) multi配置可修改所有数据
- db.集合名.updateMany({},{$set:{users:"张杰"}}) 修改所有数据 $set是设置字段,$inc是对字段进行累加操作(必须是数字类型)
- db.集合名.updateOne()查询
- $set 赋值 $inc累加 $or或者 $all 全部符合 $and 且 $in 匹配在数组中的一个
- {$or/$and:[ { name: ‘离’},{ sex: '男' } ] } or和and的用法 获取满足name为离,sex为男这两种条件 任意一条/所有条件的数据
- {name: {$all: [ '离','月' ] }} 获取名字同时包含离 和 月 的数据
- {name: {$in: [ '离','月' ] }} 获取名字包含离 或 月 的数据
删:
- db.集合名.deleteOne({})
-
- db.musiclist.deleteOne({users:"张杰2"}) 删除一条数据
- db.musiclist.deleteMany({users:"张杰2"}) 删除所有数据
-
- db .集合名.remove({users:"张杰2"}) 删除所有数据
-
- db .集合名.remove({users:"张杰2"},true) 删除一条数据
- db .集合名.remove({}) : 删除所有
-
- db.集合名.drop()
-
- 删除当前集合
-