装好环境变量的mongo后可以按
键盘上面的 window+R键 进入到mongo数据库的环境
此时的这个服务千万别关,最小化就可以了
然后再次window+R 键再开一个dos界面 输入mongo 就可以了
查看数据库相关的信息
show dbs:查看当前的数据库
首先进入之后可以创建一个虚拟的数据库,
这个数据库当插入数据后就不再是虚拟的了。
比如先创建一个叫student的数据库 use student
此时你的数据库肯定没有数据,你可以导入数据或者自己插入数据
use score进入到名字叫做score的数据库 ,此时你的数据库名字可以用db代替
db就相当于你的数据库 ,以后使用可以直接使用db就可以了,
db:查看当前所在的数据库
show collections:查看当前数据库中有哪些集合
增加
添加数据库
因为db相当于你的数据库的名字,所以我向db中添加东西,就相当于向数据库名为score 中添加东西
db.userList.insert({userName:“大哥”})
此时的userList是我的集合(在 其他数据库 称为表)
批量向score中导入一些数据
这里我导入的是我的电脑E盘下面的webStrompace\mongodb\userScore 文件
这段话必须没有进入数据库环境中使用
mongoimport --db score --collection userScore --file E:\webStrompace\mongodb\userScore
解释:
–db :指定数据库
–collection: 指定集合
–file:指定导入文件
查询
mongo 进入环境
show dbs :查看有哪些数据库
use score :开始使用score的数据库
当使用use score这段代码之后 db就默认等同于你的数据库了(比如说你叫铁柱,我给你起一个别名叫:“铁蛋”,此时的铁蛋不还是指的是你吗?所以当前你的数据库叫做db了)
db 指的是当前的score数据库
show collections 查看当前数据路中的集合
db.userScore.find() 查看当前数据库中userScore集合中导入的所有数据
db.userScor.count() 查看当前数据库中userScore集合中的数据文档的条数
mongoimport --db score --collection userScore --file E:\webStrompace\mongodb\userScore –drop
此段代码是你想导入一条新的数据,但是你想删除数据库中的剩余的数据,所以你可以在导入的语句后面加上一句 --drop
–drop 是删除以前的数据,加入新的数据
可以用 db.userScore.count() 查看追加后的数据条数
db.userScore.find({userName:“张三”}); 查找姓名为张三的数据
指定查找
db.userScore.find({age:12}) 查找年纪为12的人的数据
多条件查询
db.userScore.find({age:23,userName:“张三”}) 多条件查询
db.drapDatabase(); 删除数据库
小于查找
–db.userScore.find({age:{KaTeX parse error: Expected 'EOF', got '}' at position 6: lt:56}̲) ; 年纪小于56的-- …gt:56}}); 年纪大于56的
不等于查找
db.userScore.find({age:{$ne:21}}) 年纪不等于21的
且查找
db.userScore.find({age:{$gt:22},{$lt:50}}); 年纪大于22的且小于50的
或查找
db.userScore.find($or:[{age:21},{sex:“女”}]); 查找年纪等于21的或者性别是女的
模糊查找(只能查找字符串的)
db.userScore.find({userName:/张/})
排序
正序(从小到大) 1
db.userScore.find().sort({age:1})
倒序(从大到小) -1
db.userScore.find().sort({age:-1})
如果查找的属性是对象,则要用双引号包裹起来
这是我的数据的格式
{ “_id” : 1, “userName” : “沈七”, “age” : 345, “sex” : “男”, “score” : { “yuwen” : 12, “shuxue” : 100, “yingyu” : 100 } }
db.userScore.find({“score.yuwen”:54}) 查找分数中语文等于54分的数据
db.userScore.find().sort({age:1,“score.yuwen”:-1});按照年龄正常的排序,如果年龄相同,则按照语文的成绩倒序
db.userScore.find().limit(0) 如果是0就是获取全部,如果是1或者是N,那么就获取n条数据
db.userScore.find().skip(1) 跳过几条后的数据
db.userScore.find().sort({age:1}).skip(1)…limit(2)
//按照年龄排序之后跳过第一条数据,只需要两条数据
修改数据
只会更改符合条件的的第一条数据
第一个参数是条件,第二个参数是修改的内容
db.userScore.update({userName:“张三”},{$set:{age:1111}})
完整修改,其他字段全部移出,只留年纪是111的数据
db.userScore.update({userName:“张三”},{sex:1111}})
更改多个
db.userScore.update({sex:“女”},{$set:{age:16}},{mlti:true})
修改所有叫刘鹏的并且把年纪改为1000或-1000
db.userScore.update({userName:“刘鹏”},{$set:{age:1000}},{multi:true});
将语文是100的文档删除了
db.userScore.remove({“score.yuwen”:100})
删除符合条件的文档
db.userScore.remove({sex:“男”},{justOne:true});
db.userScore.remove({}) 将集合内的文档进行删除
db.userScore.drop() 删除集合
————————————————
版权声明:本文为CSDN博主「田园将芜」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42628504/article/details/105085782