我在寫一個查詢,並且無法按照我的意願過濾數據。在表中,有一個日期字段和一個ItemCode字段。我希望每個ItemCode返回一個記錄,其中最早的日期是今天之後。今天日期之後的SQL最小日期值現在()
如果今天是2017年6月6日,我的數據是這樣的:
ItemCode Date
1 6/1/2017
1 6/7/2017
1 6/10/2017
2 6/2/2017
2 6/8/2017
2 6/15/2017
我希望得到的結果是
ItemCode Date
1 6/7/2017
2 6/8/2017
我的查詢到目前爲止是:
SELECT PO_PurchaseOrderDetail.ItemCode, Min(PO_PurchaseOrderDetail.RequiredDate) AS NextPO
FROM PO_PurchaseOrderDetail
GROUP BY PO_PurchaseOrderDetail.ItemCode
HAVING (((Min(PO_PurchaseOrderDetail.RequiredDate))>=Now()));
問題在於Min函數先觸發並抓取每個ItemCode的最早日期,這是今天之前的日期。然後計算> = Now(),並且由於最短日期在今天之前,所以查詢不會返回任何內容。
我試過在查詢的HAVING部分的min函數中放入> = Now(),但它不會改變結果。
我的結構是錯誤的,我將不勝感激任何建議。謝謝!
完美。此外,它在Access中工作得很好。謝謝! –