2017-05-22 196 views
0

我有一些數據包含2個日期字段:record datepurchase dateSQL查找最大日期

股權登記日爲每月的第一天:

2016-01-01 
2016-02-01 
2016-03-01 

購買日期是一個產品的購買日期:

2015-02-14 
2016-01-06 

我需要做的是採取最近期購買每個記錄日期的日期。所以不是最近的購買日期,這是MAX(purchasedate)給我的。但最大購買日期在記錄日期之前。

所以我得到的,因爲我上面列出將是實例數據集:

Record Date   Most Recent Purchase Date 
2016-01-01   2015-02-14 
2016-02-01   2016-01-06 
2016-03-01   2016-01-06 
+0

請標記您的DBMS。 –

+0

不能按DATE(記錄日期)分組,並選擇最大(購買日期)? –

回答

0

你也許可以試試這個:

select recordDate, max(purchaseDate) from myDB 
group by recordDate 

我假設的SQL Server。

1

您可以使用窗口函數max用於增加record_date的順序找到最新的採購:

select record_date, 
    max(purchase_date) over (
     order by record_date 
     ) as latest_purchase_date 
from your_table;