数据库表分组求和并获取最新一条记录方法

首先假设table1 有下面字段:col1,col2,col3,col4(假设是createTime)

现在需要根据col4条件获取sum(col3)且最新的一条记录,且是根据条件col1进行分组后的结果

则:

SELECT col1,  T.col2, col3, col4
  FROM (SELECT  col1,
               col2,
               SUM(col3) OVER(PARTITION BY col1) col1,
               col4,
               DENSE_RANK() OVER(PARTITION BY col1 ORDER BY createTime DESC) RN
          FROM table1) T  
 WHERE  createTime >= '2016-05-30'
   AND  createTime <= '2016-06-22'
   AND   ...
   AND RN = 1
posted @ 2016-06-21 13:14  #今晚不加班  阅读(735)  评论(0)    收藏  举报