MS Access选择与ID相关的前2个最近日期

时间:2017-01-11 06:44:47

标签: sql ms-access

我有一张表格,其中包含大量人员ID

每个ID都有很多日期

例如

ID
1 21/09/2016
1 24/09/2016 
3 09/01/2017
3 04/01/2016
3 31/12/2016
13 1/10/2016
13 1/11/2016
4 12/12/2016

我需要编写一个Microsoft Access Query,它返回一个表,为每个id选择TOP 2最新日期。因此对于ID 3(上表),它将返回09/01/2017和04/01/2017,因为这是该ID的两个最新日期。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

试试这个:

Select A.ID, A.Date 
from  (
        Select Id, Date , 
        Rank() OVER (Partition by Id order by Date Desc) as daterank 
        from tablename
      ) A
Where A.daterank < 3