MongoDB基本操作
MongoDB基本操作
一、连接数据库
win + r 输入cmd打开命令提示符
输入mongo
清屏:
cls
二、创建数据库、查看、删除数据库
1、使用数据库、创建数据库
use user
如果想要创建数据库成功,那么必须插入一个数据。
db.user.insert({"name":"snail"});
2、查看数据库
show dbs;
3、显示当前的数据集合(类似mysql中的表)
show collections;
4、删除集合,删除指定的集合 删除表
删除集合 db.COLLECTION_NAME.drop();
db.user.drop();
5、删除数据库,删除当前所在的数据库
db.dropDatabase();
三、插入数据
这个和创建的语句是一样的 db.user.insert({"name":"zhangsan","age":20});
四、查找数据
1、查询所有记录
db.user.find();
2、查询去掉后的当前集合集合中的某列的重复数据
db.user.distince("name");
3、查询某条数据的记录
db.user.find({"age":20});
4、查询age>20的记录
db.user.find({age:{$gt:20}});
5、查询age<20的记录
db.user.find({age:{$lt:20}});
6、查询age>=20的记录
db.user.find({age:{$gte:20}});
7、查询age<=20的记录
db.user.find({age:{$lte:20}});
8、查询age>=21并且age<=26的记录
db.user.find({age:{$gte:21,$lte:26}});
9、查询name中包含mongo的数据(用于模糊搜索)
db.user.find({name:/mongo/});
10、查询name中以mongo开头的
db.user.find({name:/^mongo/});
11、查询name中以mongo结尾的
db.user.find({name:/mongo$/});
12、查询指定列name、age数据(类似sql语句 selelct name,age from user)
db.user.find({},{name:1,age:1});
13、查询指定列name、age数据 ,age>20
db.user.find({age:{$gt:20}},{name:1,age:1});
14、按照年龄排序 1升序 -1降序
升序:
db.user.find().sort({age:1});
降序:
db.user.find().sort({age:-1});
15、查询name='张三',age=20的数据
db.user.find({name:'zhangsan',age:20});
16、查询10条以后的数据
db.user.find().skip(10);
17、查询前5条数据
db.user.find().limit(5);
18、查询在5-10之间的数据(可用于分页)
db.user.find().limit(10).skip(5);
19、or与查询
db.user.find({$or:[{age:20},{age:22}]});
20、查询第一条数据
db.user.findOne();
21、查询某个结果集的记录条数 统计数量
db.user.find({age:{$gte:20}}).count();
五、修改数据
1、修改name='张三' 的,把年龄改成16岁:
db.user.update({"name":"张三"},{$set:{"age":16}});
2、上面的语句只能修改name='张三' 的一条数据,设置multi数据,修改多条
db.user.update({"name":"张三"},{$set:{"age":16}},{multi:true});
3、完整替换,注意:这里不使用$set
db.user.update({"name":"张三"},{"name":"大王","age":39});
4、设置name='大王' 的,为其年龄增加50
db.user.update({name:'大王'},{$inc:{age:50}},false,true);
5、组合设置
db.user.update({name:'大王'},{$inc:{age:50},$set:{name:'haha'}},false,true);
六、删除数据
1、删除name='haha' 的数据
db.user.remove({"name":"haha"});
2、只删除查询出来的第一条数据
db.user.remove({"name":"haha"},{justOne:true});