SQL Server - 如何显示最近的记录
Posted
技术标签:
【中文标题】SQL Server - 如何显示最近的记录【英文标题】:SQL Server - How to display most recent records 【发布时间】:2011-12-20 18:05:04 【问题描述】:我在 SQL Server 中有一个表。
ID PID LASTMODIFIED REASON
1 1 01/01/2011 XYZ
2 1 04/01/2011 XYY
3 2 05/01/2011 ZZZ
4 2 03/01/2011 ABC
我想为每个 PID 选择基于 MAX(LASTMODIFIED) 的行。对于 EX,选择应返回以下内容:
ID PID LASTMODIFIED REASON
2 1 04/01/2011 XYY
3 2 05/01/2011 ZZZ
请帮助我处理 SQL 语句。谢谢。
【问题讨论】:
【参考方案1】:SELECT A.ID, A.PID, A.LastModified, A.Reason
FROM MyTable AS A INNER JOIN (
SELECT PID, MAX(LastModified) AS MaxDate
FROM MyTable
GROUP BY PID) AS B ON A.PID = B.PID AND A.LastModified = B.MaxDate
【讨论】:
以上是关于SQL Server - 如何显示最近的记录的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SQL Server 2005 中创建和维护最近 7 天的分区视图和存档记录?