首页 > 数据库技术 > 详细

SQLServer-按字段分组后取日期最新的一条

时间:2021-04-23 16:13:28      阅读:25      评论:0      收藏:0      [点我收藏+]

sql 按字段分组后取日期最新的一条

第一种方式over(partition by)

select  t.* from (
    select a.*, row_number() over(partition by 需要分组的字段 order by 更新时间 desc) rw 
from 表 a) t where t.rw = 1;

第二种方式MAX(日期)

select t1.* from 表 t1 inner join (
   SELECT max(create_date) as create_date, 需要分组的字段mark
   FROM 表 group by mark
) t2 on t1.create_date=t2.create_date and t1.mark=t2.mark

 

第一种在数据量比较大的时候很慢,第二种反而更快,建议选择第二种

SQLServer-按字段分组后取日期最新的一条

原文:https://www.cnblogs.com/liujianshe1990-/p/14693392.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!