mysql某个字段排序后按这个字段分组取前10个的数据

时间:2021-03-16 15:11:36
需求是按某个字段分组,再按分组分页,取出每页分组里的所有数据。
例如表数据
Id 组名
1    A
2    A
3    B
4    A
5    B
6    C
7    F
8    C
9    D
10   E
11   F
每页取两组数据,第一页结果是
Id 组名
1    A
2    A
4    A
3    B
5    B
第二页结果是
Id 组名
6    C
8    C
9    D
第三页结果是
Id 组名
10   E
7    F
11   F
这有办法用一条sql查吗

2 个解决方案

#1


参考下贴中的多种方法

http://blog.csdn.net/acmain_chm/article/details/4126306
[征集]分组取最大N条记录方法征集,及散分....

#2


引用 1 楼 ACMAIN_CHM 的回复:
参考下贴中的多种方法

http://blog.csdn.net/acmain_chm/article/details/4126306
[征集]分组取最大N条记录方法征集,及散分....

感谢,看完之后知道怎么写了

select * from table where 组名 in (select  组名 from table group by 组名 order by 组名 limit 0, 2) order by 组名, id

#1


参考下贴中的多种方法

http://blog.csdn.net/acmain_chm/article/details/4126306
[征集]分组取最大N条记录方法征集,及散分....

#2


引用 1 楼 ACMAIN_CHM 的回复:
参考下贴中的多种方法

http://blog.csdn.net/acmain_chm/article/details/4126306
[征集]分组取最大N条记录方法征集,及散分....

感谢,看完之后知道怎么写了

select * from table where 组名 in (select  组名 from table group by 组名 order by 组名 limit 0, 2) order by 组名, id