学习数据库简单的就是掌握使用增删改查,MongoDB也不例外,接下来简单学习一下MongoDB的增删改查!
插入数据,随着数据的插入,数据库创建成功了,集合也创建成功了。
db.student.insert({"name":"小明"})
我们不可能一条一条的insert。所以,我们希望用sublime在外部写好数据库的形式,然后导入数据库
mongoimport --db info --collection student --drop --file /db.json
-db test 想往哪个数据库里面导入
--collection restaurants 想往哪个集合中导入
--drop 把集合清空
--file primer-dataset.json 哪个文件
查找数据,用find。find中没有参数,那么将列出这个集合的所有数据
db.student.find();//student为集合名词(数据集合)
精确匹配:
db.student.find({"age":18});//查找年龄18的数据
多个(即和条件)条件(条件间逗号隔开):
db.student.find({{"age":18},{"sex":"男"}});//筛选年龄18,男性
大于(或者小于)条件:
db.student.find({"age":{$gt:20}});//筛选年龄大于20岁,小于条件gt更换lt既可
或条件:
db.student.find({$or:[{"age":9},{"age":11}]});//年龄9岁或者11岁的数据
排序条件:(-1表示倒叙,1表示正序)
db.student.find({"class":"前端172"}).sort({"age":1});//筛选前端172人员,按照年龄正序
db.student.find({"age":"22"}).sort({"name":-1});//筛选年龄22,按照姓名顺序倒叙
改里面还有查询条件。你要该谁,要告诉mongo。
set关键词的只修改列举字段
db.student.update({"age":12},{$set:{"name":"小明"}});//set表示保留其他字段不修改,没有set将目标数据全部修改
没有set关键字:将目标数据全部替换修改的
db.student.update({"age":12},{"name":"小明"})//清空原有字段,替换修改,不保留原来
查找替换操作默认匹配一个,设置匹配所有符合条件全部修改
db.student.update({"age":22},{$set:{"job":"程序员"}},{"multi":true});//修改所有的符合条件数据
删除符合条件全部数据(默认符合全部删除)
db.student.update({"age":15})//删除年龄为15岁的,全部匹配删除
删除符合条件的一条数据
db.student.remove({"age":22,{justOne:true}});//删除年龄22,匹配一个
空条件表名删除所有集合内所有数据,但是与集合存在
db.student.remove({});//删除集合所有数据,保留集合
删除当前数据库
db.dropDatabase();
数据库以及数据集合重命名
db.runCommand( { renameCollection: "test.orders", to: "test.orders2014" }