[英]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.