MongoDB查询命令详解
1、查询所有记录
复制代码代码如下:
db.userInfo.find();
相当于:select* from userInfo;
默认每页显示20条记录,当显示不下的情况下,可以用it迭代命令查询下一页数据。注意:键入it命令不能带“;”
但是你可以设置每页显示数据的大小,用DBQuery.shellBatchSize= 50;这样每页就显示50条记录了。
2、查询去掉后的当前聚集集合中的某列的重复数据
复制代码代码如下:
db.userInfo.distinct("name");
会过滤掉name中的相同数据
相当于:select distict name from userInfo;
3、查询age = 22的记录
复制代码代码如下:
db.userInfo.find({"age": 22});
相当于: select * from userInfo where age = 22;
4、查询age > 22的记录
复制代码代码如下:
db.userInfo.find({age: {$gt: 22}});
相当于:select * from userInfo where age >22;
5、查询age < 22的记录
复制代码代码如下:
db.userInfo.find({age: {$lt: 22}});
相当于:select * from userInfo where age <22;
6、查询age >= 25的记录
复制代码代码如下:
db.userInfo.find({age: {$gte: 25}});
相当于:select * from userInfo where age >= 25;
7、查询age <= 25的记录
复制代码代码如下:
db.userInfo.find({age: {$lte: 25}});
8、查询age >= 23 并且 age <= 26
复制代码代码如下:
db.userInfo.find({age: {$gte: 23, $lte: 26}});
9、查询name中包含 mongo的数据
复制代码代码如下:
db.userInfo.find({name: /mongo/});
//相当于%%
select * from userInfo where name like ‘%mongo%';
10、查询name中以mongo开头的
复制代码代码如下:
db.userInfo.find({name: /^mongo/});
select * from userInfo where name like ‘mongo%';
11、查询指定列name、age数据
复制代码代码如下:
db.userInfo.find({}, {name: 1, age: 1});
相当于: select name, age from userInfo;
当然name也可以用true或false,当用ture的情况下河name:1效果一样,如果用false就是排除name,显示name以外的列信息。
12、查询指定列name、age数据, age > 25
复制代码代码如下:
db.userInfo.find({age: {$gt: 25}}, {name: 1, age: 1});
相当于: select name, age from userInfo where age >25;
13、按照年龄排序
复制代码代码如下:
升序:
db.userInfo.find().sort({age: 1});
降序:
db.userInfo.find().sort({age: -1});
14、查询name = zhangsan, age = 22的数据
复制代码代码如下:
db.userInfo.find({name: 'zhangsan', age: 22});
相当于: select * from userInfo where name = ‘zhangsan' and age = ‘22';
15、查询前5条数据
复制代码代码如下:
db.userInfo.find().limit(5);
相当于: select top 5 * from userInfo;
16、查询10条以后的数据
复制代码代码如下:
db.userInfo.find().skip(10);
相当于:
select * from userInfo where id not in (
select top 10 * from userInfo
);
17、查询在5-10之间的数据
复制代码代码如下:
db.userInfo.find().limit(10).skip(5);
limit是限制显示的数量,skip是跳过的数量。
18、or与 查询
复制代码代码如下:
db.userInfo.find({$or: [{age: 22}, {age: 25}]});
相当于: select * from userInfo where age = 22 or age = 25;
19、查询第一条数据
复制代码代码如下:
db.userInfo.findOne();
相当于:
select top 1 * from userInfo;
db.userInfo.find().limit(1);
20、查询某个结果集的记录条数
复制代码代码如下:
db.userInfo.find({age: {$gte: 25}}).count();
相当于:select count(*) from userInfo where age >= 20;
21、按照某列进行排序
复制代码代码如下:
db.userInfo.find({sex: {$exists: true}}).count();
相当于:select count(sex) from userInfo;
MongoDB查询命令详解相关推荐
- MongoDB compact 命令详解
为什么需要 compact 一图胜千言 remove 与 drop 的区别 MongoDB 里删除一个集合里所有文档,有两种方式 db.collection.remove({}, {multi: tr ...
- MongoDB——查询操作详解
查询语法 db.collection_name.find (query, //查询条件projection //可选,指定需要返回的字段:默认返回所有字段 ) 查询集合所有文档 可以在find()后调 ...
- MongoDB——删除命令详解
语法 db.collection.remove(<query>, //删除条件{justOne: <boolean>,writeConcern: <document> ...
- Linux(Ubuntu)内存查询top命令详解
linux中的top命令详解 引言 top命令是UNIX/Linux系统中,用于查看系统详情的第一入口,一般我们查看机器运行状态的时候,总是第一个使用top命令,而实际上top命令展示的数据很多,对于 ...
- windows/NBTSTAT,linux/nmblookup命令详解,查询NetBIOS名
NBTSTAT命令详解 请问: Linux下有没有和nbtstat一样的命令,用 nmblookup -A ip 可以 nbstat命令主要用于查看当前基于netbios的tcp/ip连接状态,通过该 ...
- mongodb不等于某个值_MongoDb进阶实践之四 MongoDB查询命令详述
一.引言 上一篇文章我们已经介绍了MongoDB数据库的最基本操作,包括数据库的创建.使用和删除数据库,文档的操作也涉及到了文档的创建.删除.更新和查询,当然也包括集合的创建.重命名和删除.有了这些基 ...
- linux who命令功能,Linux who命令详解
who 命令显示关于当前在本地系统上的所有用户的信息.显示以下内容:登录名.tty.登录日期和时间.输入whoami 显示您的登录名.tty.您登录的日期和时间.如果用户是从一个远程机器登录的,那么该 ...
- Linux系统与网络、磁盘参数和日志监控等命令详解二
创作人QQ:851301776,邮箱:lfr890207@163.com, 欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点! 个人座右铭: 1.没有横空出世,只要厚积一定发. ...
- linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- linux中的shell有printf吗,Linux Shell系列教程之(八)Shell printf命令详解
在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell printf命令有了一个简略的介绍,本篇给大家详细介绍下Shell中的printf命令. 一.Shell p ...
最新文章
- @bean注解和@component注解的区别_阿里面试题一:spring里面使用xml配置和注解配置区别...
- WebService大讲堂之Axis2(4):二进制文件传输
- EFCore查缺补漏(二):查询
- day 34 守护线程守护进程 互斥锁线程 信号量 生产者消费者
- Flask wtforms
- mysql 定期备份_MySQL定时备份(全量备份+增量备份)
- 2017.12.1T19_B2_6
- 《剑指offer》面试题15——链表中倒数第k个结点
- 首届Filecoin矿工大会会议重点
- HIT CSAPP大作业--程序人生
- 透过现象看本质:喧闹的中国电子商务
- 【开源OA项目】基于环信IM开发完整的企业通讯解决方案-Dolores
- 手机数据线种类有哪些
- 美国软件公司Salesforce获得区块链反垃圾邮件解决方案专利
- 夜光 :AGV 导航策略总体方案设计
- jack编译突然无法编译的问题
- SparkSQL 自定义UDF提取json中的字段
- Lambada表达式常用案例(技能题)
- Zphyr_Bluetooth
- 面向对象设计原则之三--依赖倒置(转)原则