SQL:如何取得分组中某个字段为最大值的那些记录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL:如何取得分组中某个字段为最大值的那些记录相关的知识,希望对你有一定的参考价值。

参考技术A 用group by就可以解决。
比如表名为test,数据如下
id grade
1 10
1 20
2 40
2 30

现在要求按id分组查询grade的和,可以用如下语句:

1

select id,sum(grade) as grade from test group by id;

得到的结果是
id grade
1 30
2 70

Mysql按字段分组取最大值记录

select a.* from table2 as a where age = (select max(age) from table2 where a.table1_id=table1_id)sql语句解答一下,重要讲解后面的where条件 a.table1_id=table1_id

参考技术A 其实这个方法有问题应该这样写
select table1_id,max(age) age from table2 group by table1_id
你的where条件 a.table1_id=table1_id是判断当前table1_id的值age是不是最大的本回答被提问者和网友采纳

以上是关于SQL:如何取得分组中某个字段为最大值的那些记录的主要内容,如果未能解决你的问题,请参考以下文章

sql 以某个字段分组,另一个字段为参加比较的列,取得前n项的值

SQL语法怎么取得一个字段的最大值

Mysql按字段分组取最大值记录

在SQL中,如何查询某一字段中最大值的数据

hive如何按某一字段分组取最大值所在行的数据

hive如何按某一字段分组取最大值所在行的数据