Mongodb查询语句详解(12条最常用查询语句)

Mongodb查询语句详解(12条最常用查询语句)-mikechen

MongoDB查询语句是平时经常使用到的,下面详解最常用的12条MongoDB查询语句。

MongoDB查询所有记录

命令:

db.users.find();

默认每页显示20条记录,可以通过用DBQuery.shellBatchSize来修改,比如:DBQuery.shellBatchSize= 50这样每页就显示50条记录了。

 

MongoDB查询记录总数

命令:

db.users.find().count();

获取用户总数。

 

MongoDB查询去重

命令:

db.uses.distinct("name");

 

MongoDB单条件查询

命令:

db.users.find({"age" : 28})

查询 age = 28 的记录,这就给MySQL的where age=28类似。

 

MongoDB多条件查询

命令:

db.users.find({"username" : "mikechen", "age" : 28})

查询username=mikechen,以及age=28的数据,与MySQL的where “username” = “mikechen” and age = 28类似。

 

MongoDB判断查询

命令:

db.users.find({"age" : {"$gte" : 18, "$lte" : 30}})

查询年龄age>=18,以及age<=30,这与MySQL的中的where age >=18 and age <= 30类似。

 

MongoDB模糊查询

命令:

db.users.find({name: /mikechen/});

模糊查询名字包含“mikechen”,相当于MySQL中的模糊查询:where name like ‘%mikechen%’;

 

MongoDB升序查询

命令:

db.users.find().sort({age: 1});

按照年龄排序 1 为升序 。

 

MongoDB降序查询

命令:

db.users.find().sort({age: -1});

按照年龄排序 , -1为 降序。

 

MongoDB限制返回查询

命令:

db.users.find().limit(5);

查询用户前5条数据。

 

MongoDB查询 N条后的数据

命令:

db.users.find().skip(10);

查询 10 条以后的数据。

 

MongoDB分页查询

命令:

db.users.find().limit(5).skip(2);

limit类似SQL的limit,skip类似SQL的offset偏移量。

用于分页,这个与MySQL的分页查询类似,limit 是 pageSize,skip 是第几页*pageSize。

以上就是MongoDB查询语句的介绍,希望对你掌握MongoDB有所帮助!

作者简介

陈睿|mikechen,10年+大厂架构经验,BAT资深面试官,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

👇阅读更多mikechen架构文章👇

阿里架构 |双11秒杀 |分布式架构 |负载均衡 |单点登录 |微服务 |云原生 |高并发 |架构师

以上

关注作者「mikechen」公众号,获取更多技术干货!

后台回复架构,即可获取《阿里架构师进阶专题全部合集》,后台回复面试即可获取《史上最全阿里Java面试题总结

评论交流
    说说你的看法