oracle--分组后获取每组数据第一条数据

原文链接: https://www.cnblogs.com/YYkun/p/9450235.html
[sql]
SELECT *       
   FROM (SELECT ROW_NUMBER() OVER(PARTITION BY x ORDER BY y DESC) rn,       
         test1.*       
         FROM test1)       
  WHERE rn = 1  ;

此sql代表按照字段x进行分组,按照字段y倒序排序,取每个分组中的第一条数据。

其中 partition by 是指的是要进行分组的字段。

你可能感兴趣的:(Oracle)