问题阐述:
1. 数据库查询的时候group by可以对数据进行分组,然而返回的结果集中,一组只占结果集的一行。
2. 也就是说,除了对group by出来的信息使用max、min、avg、sum否则查出来的结果信息几乎没有什么意义。(在DB2中尝试,假如不加这些函数是执行不出结果的,会报错;在mysql中,不加这些函数可以出来结果值,不报错,但是结果值其实是没有什么意义的,因为它代表不了整个组的信息,而是整个组中的一条信息,故我认为是没有意义的)
3.有时候想将数据分组,然后取出每一组的前十名,经尝试,用mysql的limit它直接作用于了最后的结果集,而不是如我所愿的取出每一组的前十个;用DB2的fecth first 10 rows only也是同样效果;sql server的top未曾尝试
4. 于是想到写存储过程来解决这个需求,写法如下:<