SQL Server - 如何显示最近的记录

发布于 2024-12-13 04:25:06 字数 389 浏览 0 评论 0原文

我在 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

Pelase help me with the SQL statements。谢谢。

I have a table in 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

I want to select the rows based on MAX(LASTMODIFIED) for each PID. For EX, the select should return the following:

ID PID LASTMODIFIED REASON
2  1   04/01/2011   XYY
3  2   05/01/2011   ZZZ

Pelase help me with the SQL statement. Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半边脸i 2024-12-20 04:25:07
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
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
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文