繁体   English   中英

选择一个具有最大日期的唯一ID

[英]Select a distinct ID with the maximum date

我看到一些有关我的问题,但它们并不完全相同。

我需要在一个DB2数据库中进行SELECT,在该数据库中我只保留不同的ID及其数据。

例如,我有一些数据:

ID    DATE_BEGIN   DATE_END
1111  2014-01-01   2016-01-02
1111  2018-01-05   2018-01-03
1111  1990-01-01   9999-12-31
2222  1998-02-02   2000-12-20

就我而言,我想保留:

1111  1990-01-01   9999-12-31
2222  1998-02-02   2000-12-20

我的SELECT语句:

SELECT
ID, DATE_BEGIN, DATE_END
FROM TABLE_NAME T1
WHERE DATE_END = (SELECT
                  MAX(DATE_END)
                  FROM TABLE_NAME T2
                  WHERE T2.DATE_END = T1.DATE_END)

但是我一直在获取所有记录。

谢谢您的帮助 !

我之前曾问过类似的问题,请在此处参考我的文章: 获取每条记录的最新日期

SELECT ID, DATE_BEGIN, DATE_END
FROM (
SELECT ID, DATE_BEGIN, DATE_END
      ,ROW_NUMBER() OVER (PARTITION BY [ID] ORDER BY [DATE_END] DESC) RN 
FROM TABLE_NAME
)A
WHERE A.RN = 1

归功于我帖子中的原始答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM