基本方式:
SELECT E.ID,E.NAME, E.AGE, E.INFO
FROM EMPLOYEE E,
(SELECT E.ID, MAX( E.AGE) E.AGE FROM EMPLOYEE E GROUP BY E.ID) T
WHERE E.ID= T.ID
AND E.AGE= T.AGE;
利用OVER (PARTITION BY ..):
SELECT T.ID, T.NAME, T.AGE, T.INFO
FROM (SELECT E.*, ROW_NUMBER() OVER(PARTITION BY E.ID ORDER BY E.AGE DESC) AS NUM
FROM EMPLOYEE E
) T
WHERE T.NUM = 1
详细资料:http://www.cnblogs.com/shined/archive/2013/01/16/2862809.html
本文介绍了使用SQL进行数据分组及排序的两种方法:一种是通过子查询结合最大年龄筛选相同ID的数据;另一种则是利用OVER(PARTITION BY..)进行窗口函数操作,实现高效的分组与排序。
1455

被折叠的 条评论
为什么被折叠?



