我有一個MS Access
表格跟蹤月末的產品數量如下。 我需要爲指定的日期產生指定ProductId的最新數量,例如 的數量爲ProductId 1 on 15-Feb-12 is 100
,數量爲ProductId 1 on 15-Mar-12 is 150
。SQL Group通過在哪裏聲明
ProductId | ReportingDate | Quantity|
1 | 31-Jan-12 | 100 |
2 | 31-Jan-12 | 200 |
1 | 28-Feb-12 | 150 |
2 | 28-Feb-12 | 250 |
1 | 31-Mar-12 | 180 |
2 | 31-Mar-12 | 280 |
下面我的SQL語句將所有以前的值而不是最新的一個值。任何人都可以幫助我解決查詢問題。
SELECT Sheet1.ProductId, Max(Sheet1.ReportingDate) AS MaxOfReportingDate, Sheet1.Quantity
FROM Sheet1
GROUP BY Sheet1.ProductId, Sheet1.Quantity, Sheet1.ReportingDate, Sheet1.ProductId
HAVING (((Sheet1.ReportingDate)<#3/15/2012#) AND ((Sheet1.ProductId)=1))
如果您選擇的單品,你可以通過使用順序,選擇前1 – Naveen
什麼是您預期的輸出? – Incognito