MySQL 子查询——查询最大值
子查询指将一个查询语句嵌套在另一个查询语句中。子查询可以在 SELECT、UPDATE 和 DELETE 语句中使用,而且可以进行多层嵌套。在实际开发时,子查询经常出现在 WHERE 子句中。子查询在 WHERE 中的语法格式如下:
WHERE <表达式> <操作符> (子查询)
其中,操作符可以是比较运算符和 IN、NOT IN、EXISTS、NOT EXISTS 等关键字。
要求:查出指定范围的最大值,同时显示与之相关的其它信息
实例:查询全班最高分,查询全级最高分,查询全校最高分,同时显示最高分者的姓名,所在班级以及各科成绩情况。
1、查询全班最高分
mysql> select * from studscoreinfo
-> where total_scores = (select max(total_scores) from studscoreinfo where grade_classes =201);
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| Id | Grade_Classes | Seat_Numbers | Names | Chinese_Scores | Math_Scores | English_Scores | Total_Scores | Score_Averages | Remarks |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| 22 | 201 | 5 | 陈炜涛 | 88 | 100 | 96 | 284 | 94.7 | |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
1 row in set (0.00 sec)
2、查询全级最高分
mysql> select * from studscoreinfo
-> where total_scores = (select max(total_scores) from studscoreinfo where grade_classes between 101 and 102);
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| Id | Grade_Classes | Seat_Numbers | Names | Chinese_Scores | Math_Scores | English_Scores | Total_Scores | Score_Averages | Remarks |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| 9 | 101 | 9 | 赖嘉欣 | 84 | 98 | 96 | 278 | 92.7 | |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
1 row in set (0.00 sec)
3、查询全校最高分
mysql> select * from studscoreinfo
-> where total_scores = (select max(total_scores) from studscoreinfo where grade_classes between 301 and 302);
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| Id | Grade_Classes | Seat_Numbers | Names | Chinese_Scores | Math_Scores | English_Scores | Total_Scores | Score_Averages | Remarks |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
| 38 | 302 | 2 | 陈资彬 | 89.5 | 98 | 98.5 | 286 | 95.3 | |
+------+---------------+--------------+-----------+----------------+-------------+----------------+--------------+----------------+---------+
1 row in set (0.00 sec)
第一行*是选所有列进行查询,全显示,也可根据需要指定列名查询,第二行中操作符前面的"="可用in代替,效果一样。
MySQL 子查询——查询最大值的更多相关文章
- Mysql子查询、关联查询
mysql中update.delete.install尽量不要使用子查询 一.mysql查询的五种子句 where(条件查询).having(筛选).group by(分组).orde ...
- MySQL 子查询(一)
源自MySQL 5.7 官方手册 13.2.10 Subquery Syntax 〇.MySQL子查询介绍 子查询指的是嵌套在某个语句中的SELECT语句. MySQL支持标准SQL所要求的所有子查询 ...
- [慢查优化]慎用MySQL子查询,尤其是看到DEPENDENT SUBQUERY标记时
案例梳理时间:2013-9-25 写在前面的话: 在慢查优化1和2里都反复强调过 explain 的重要性,但有时候肉眼看不出 explain 结果如何指导优化,这时候还需要有一些其他基础知识的佐助, ...
- Mysql子查询IN中使用LIMIT
学习下Mysql子查询IN中使用LIMIT的方法. 这两天项目里出了一个问题,mysql LIMIT使用后报错. 需求是这样的,我有3张表,infor信息表,mconfig物料配置表,maaply物料 ...
- MySQL 子查询 EXISTS 和 NOT EXISTS(转)
MySQL EXISTS 和 NOT EXISTS 子查询 MySQL EXISTS 和 NOT EXISTS 子查询语法如下: SELECT ... FROM table WHERE EXISTS ...
- MySQL多表查询之外键、表连接、子查询、索引
MySQL多表查询之外键.表连接.子查询.索引 一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为 ...
- mysql子查询慢的问题
当你在用explain工具查看sql语句的运行计划时.若select_type 字段中出现"DEPENDENT SUBQUERY"时,你要注意了.你已经掉入了mysql子查询慢 ...
- Mysql 单表查询 子查询 关联查询
数据准备: ## 学院表create table department( d_id int primary key auto_increment, d_name varchar(20) not nul ...
- MySQL子查询,派生表和通用表达式
一:子查询 1.介绍 在另一个查询(外部查询)中嵌套另一个查询语句(内部查询),并使用内部查询的结果值作为外部查询条件. 2.子查询在where中 SELECT customerNumber, che ...
- MySQL子查询慢现象的解决
当你在用explain工具查看sql语句的执行计划时,若select_type 字段中出现“DEPENDENT SUBQUERY”时,你要注意了,你已经掉入了mysql子查询慢的“坑". 相 ...
随机推荐
- React Native简史
诞生 React Native 诞生于 2013 年的 Facebook 内部黑客马拉松(hackathon): In the essence of Facebook’s hacker culture ...
- xshell使用记录
1.rz---上传文件 2.ls----列出文件 3.chmod +x webbench_pro -----赋予执行权限 4../webbench_pro----当前目录执行程序
- 解决从服务器获取的数组是 __NSCFConstantString以及""没有空格字符串的问题
AJ分享,必须精品 问题 项目遇到了个bug,从服务器获取到的数据是这样的 { status = 1, data = [ { uid = 161, type = 2, id = 79, addtime ...
- 疲劳驾驶打瞌睡?python保障您的驾驶安全
道路千万条,安全第一条!疲劳驾驶可谓交通事故几大罪魁祸首之一,根据美国一项研究显示,司机睡眠不足4小时,交通事故肇事几率等同于醉驾. 为了减少疲劳驾驶现象,驾驶员疲劳检测应运而生.这是一项安全技术,可 ...
- 统计子串数量,Python基础
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:陈YL PS:如有需要Python学习资料的小伙伴可以加点击下方链接自 ...
- stand up meeting 12-7
weekend updates: 1.答题界面和结果界面的跳转和数据传输已全部完成. 2.答题界面完成简单的getRankingData API结果展示,答题时间,错误数目和错题题目的展示,点击题目可 ...
- MDC是什么鬼?用法、源码一锅端
近期用到阿里的一款开源的数据同步工具 Canal,不经意之中看到了 MDC 的用法,而且平时项目中也多次用到 MDC,趁机科普一把. 通过今天的分享,能让你轻松 get 如下几点,绝对收获满满. a) ...
- C - Highways poj1751最小生成树
The island nation of Flatopia is perfectly flat. Unfortunately, Flatopia has a very poor system of p ...
- 域名和服务器绑定及https协议更换
服务器是之前已经购买了的 1.腾讯云产品中搜索域名注册(产品太多了懒得找,直接搜索来得快些) 2.进去之后可以选择各种后缀的域名,输入自己喜欢的,看看哪些后缀是没有被注册的.自己挑选一个就可以,按照指 ...
- php token验证范例
<?php $module = $_GET['module']; $action = $_GET['action']; $token = md5sum($module.date('Y-m-d', ...