美文网首页
MSSQL分组取后每一组的最新一条记录

MSSQL分组取后每一组的最新一条记录

作者: niunan | 来源:发表于2017-06-10 23:28 被阅读100次

数据库中二张表,用户表和奖金记录表,奖金记录表中一个用户有多条信息,有一个生效时间,现在要查询:
奖金生效时间在三天前,每个用户取最新一条奖金记录,且用户末锁定
以前用的方法是直接写在C#代码中的:
for(所有末锁定用户)
查询奖金记录表 top 1 where uid=??? order by 生效时间 desc
if(上面查询的记录生效时间在三天前)
输出

今天花了大部分时间研究了一下,终于找到一条SQL语句就可以把结果查出来的方法:

微信截图_20170610230918.png
那个row_number函数在MSSQL2008以上才会有!!!

相关文章

网友评论

      本文标题:MSSQL分组取后每一组的最新一条记录

      本文链接:https://www.haomeiwen.com/subject/uawcqxtx.html