根据最新日期选择记录

时间:2014-06-17 12:38:48

标签: ms-access

我有一个返回以下信息的查询

StockCode   BomReference    MaxOfMaxOfDATE

2112003       5109200        17/06/2014
2112003       5112272        02/05/2014
2112113       5112113        11/06/2014
2112113       5113039        22/04/2014
2112120       5112120        20/03/2014
2112120       5113035        30/05/2014
2112140       5109191        13/06/2014
2112140       5112140        30/04/2014
2112140       5113024        01/04/2014
2112141       5109193        13/06/2014
2112142       5109192        13/06/2014
2112143       5112311        15/05/2014
2112143       5112344        07/06/2014
2112146       5112341        16/04/2014
2112154       5112154        16/06/2014
2112154       5113036        07/05/2014

我希望能够选择具有最新日期的StockCode和bom参考;

所以我想要的结果是

StockCode   BomReference    MaxOfMaxOfDATE

2112003       5109200        17/06/2014
2112113       5112113        11/06/2014
2112120       5113035        30/05/2014
2112140       5109191        13/06/2014
2112141       5109193        13/06/2014
2112142       5109192        13/06/2014
2112143       5112344        07/06/2014
2112146       5112341        16/04/2014
2112154       5112154        16/06/2014

任何建议都会非常有用。

1 个答案:

答案 0 :(得分:1)

这应该适合你:

SELECT
    G.StockCode
,   Y.BomReference
,   G.MaxDate
FROM
    [YourQuery] AS Y
INNER JOIN
(
SELECT StockCode, MAX(MaxOfMaxOfDATE) AS MaxDate 
FROM [YourQuery]
GROUP BY StockCode
) AS G
ON Y.StockCode = G.StockCode
AND Y.MaxOfMaxOfDATE = G.MaxDate