2016-02-16 60 views
0

我有一個查詢過濾了在用戶輸入日期後發送訂單的產品的結果,並計算在該日期之後發送訂單時數量變成的數量。重複訪問SQL查詢更新計算

SELECT *, [OnHand]+[OrderJoin.Quantity] AS Qty After 
FROM Query3 
WHERE (((Query3.ShippedDate)>[Enter End Date] And (Query3.ShippedDate) Is Not Null)); 

但是,我需要一種方法來識別重複項並基於這些重複項進行更新。

例如我有這個

ID | Product Name | Qty Before | Qty Shipped | Qty After 
11 | Chocolate |   80 |   20 |  100 
11 | Chocolate |   80 |   10 |  90 

而且我需要一種方式,它顯示數量後爲110(後10和20運)

回答

1

如果我理解正確的,你要聚集查詢。這將是這樣的:

SELECT id, ProductName, 
     OnHand]+ SUM([OrderJoin.Quantity]) AS Qty After 
FROM Query3 
WHERE Query3.ShippedDate > [Enter End Date] And 
     Query3.ShippedDate) Is Not Null 
GROUP BY id, ProductName, OnHand; 

我注意到OrderJoin沒有定義,但是這是你原來的查詢的結構。

+0

完美的工作,謝謝 – cfleming93

+0

如果我刪除WHERE子句來顯示整個庫存,你知道我將如何使數量顯示爲數量之前之前,而不是NULL? – cfleming93

+0

@ cfleming93。 。 。也許這應該成爲另一個問題。 –