mysql在group by之后如何获取每一组中id最大的那一行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql在group by之后如何获取每一组中id最大的那一行相关的知识,希望对你有一定的参考价值。

参考技术A mysql在group by之后如何获取每一组中id最大的那一行

可直接用嵌套查询。
方法如下:

如数据:

id name

1 a

1 b

2 c

2 d

3 e

3 f

3 g

3 h

1
2
select count(t.counts) from
(select id,count(*) counts from 表名 group by id) t
这样得到的结果就是3。

mysql 子查询 group by的使用

1 group by表示排序,后面查询出来的是每一组的第一条数据,where后面表示提出条件之类的,如果对排序需要有条件筛选,应该在属性名后接 having +条件 。而不能使用where 

2 聚合函数sum() count() avg() max() min() GROUP BY 是分组查询,把符合条件的同一类分在一组 一般 GROUP BY 是和聚合函数配合使用的。例如

技术分享

查询出来每门课的分数都大于80分的人   select  name,min(score) as a from zt_score GROUP BY `name` HAVING a>80

技术分享

打印出如下格式

技术分享

select date,sum(result=‘胜‘) as win,sum(result=‘负‘) as lose from zt_miya  GROUP BY date

 

以上是关于mysql在group by之后如何获取每一组中id最大的那一行的主要内容,如果未能解决你的问题,请参考以下文章

MySQL查询:Group By 后取出每一组中最大的数据

SQL中只要用到聚合函数就一定要用到group by 吗?

mysql 子查询 group by的使用

sqlserver用group by分组了,但是怎么才能给每一组数据按照从小到大编号呢

Apache Spark Group By(获取组中的第一个和最后一个值)

MYSQL group by 和内部连接