【SQL】检索满足条件的最大值的数据集合
2014-05-20 19:37
363 查看
是不是看题目觉的看不懂?其实我自己也看不懂,但是又找不到更好的词来形容。
为了更好的表达我的意思,请看下。
如果有一张成绩表(Points),
我想知道每个学生成绩最好的是哪一科,该怎么算??
我们应该先找到每个学生最好的成绩
然后再根据这个学生以及成绩去查找科目
关键是要用到Max这个聚合函数。
结果
----------------------------------------
张三 80 数学
李四 85 数学
为了更好的表达我的意思,请看下。
如果有一张成绩表(Points),
学生(student) | 成绩(point) | 科目(subject ) |
张三 | 70 | 英语 |
张三 | 80 | 数学 |
李四 | 75 | 语文 |
李四 | 85 | 数学 |
我们应该先找到每个学生最好的成绩
SELECT student , Max(point) FROM Points GROUP BY student
然后再根据这个学生以及成绩去查找科目
SELECT a.student , a.point ,a.subject FROM Points a INNER JOIN ( SELECT student ,Max(point) FROM Points Group BY student )b ON a.student = b.student AND a.point = b.point
关键是要用到Max这个聚合函数。
结果
----------------------------------------
张三 80 数学
李四 85 数学
相关文章推荐
- SQL 1. 简单数据检索+检索所需的列+列别名+按条件过滤
- 只满足某个条件的数据统计SQL各类写法性能分析
- sql 一个6亿的表a,一个3亿的表b,通过外间tid关联,你如何最快的查询出满足条件的第50000到第50200中的这200条数据记录。
- SQL Cookbook:一、检索记录(3)查找满足多种条件的行
- 代码优化,实现集合的遍历,获取满足条件的数据
- 和SQL内连接不同,SQL外连接返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行,下面就为您详细介绍SQL外连接,
- 查询分组数据指行条件满足的行的上一条记录的技巧
- 在SQL如何提高大量数据的检索速度?
- SQL之数据检索
- 查询数据库中满足条件的特定行数据
- C#实现SQL全库检索数据-比较使用DataReader与DataAdapter+Datatable效率,差距惊人!
- 多条件检索SQL语句(Multi-condition SQL)
- Sql 更新所有满足条件记录里第一条记录
- 一条SQL语句实现:一行多个字段数据的最大值。
- SQL的数据检索操作简介
- Sql2005 tips 按照某些条件(一个or多个)分组,取分组中满足某个条件的一条记录
- SQL-Server中数据检索(高级查询)
- 查询数据库中满足条件的特定行数据
- SQL-Server中数据检索(简单查询)
- SQL检索数据