这里有新鲜出炉的Mysql教程,程序狗速度看过来!
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
这篇文章主要介绍了详解MySQL分组排序求Top N的相关资料,需要的朋友可以参考下
MySQL分组排序求Top N
表结构
按照grp分组,按照num排序,每组取Top 3,输出结果如下:
源代码:
- SELECT * FROM score AS t3
- WHERE (
- SELECT COUNT(*) FROM score AS t1
- LEFT JOIN score AS t2
- ON t1.grp = t2.grp AND t1.num < t2.num
- WHERE t1.id = t3.id
- ) < 3
- ORDER BY t3.grp ASC, num DESC
在where中可以通过子查询创造一个新的变量来过滤。
来源: http://www.phperz.com/article/17/1103/350435.html