2016-12-13 183 views
0
  • 我收到了表格StockMovements,其中記錄了我的 產品的所有移動。它有一個名爲「狀態」的字段,其可以具有 價值「已售出」或「已購買」,「數量」和「產品」(現在還不多,但現在並不重要)。
  • 我做了一個查詢,以獲取狀態爲「已購買」的所有產品 並取數量並將其命名爲「已購買產品」(來自 表Stockmovements)。我只是對數量進行了總結,並獲得了每種產品(名稱爲「已購買」字段)的購買數量 。
  • 我提出了另一個查詢,所有相同的只是銷售狀態。
  • 我用名稱Stock做了一個新的查詢。它建立在表 產品和我上面提到的2個問題上。它需要prodict_ID 和表Product中的產品名稱,從 購買的字段第一個查詢和來自第二個查詢的Sold字段,然後是 最終字段沒有連接到上面的任何一個,而是一個計算。將其命名爲 AvailableQuantity,然後添加表達式生成器 = [已購買] - [已售]。
  • 現在,當我運行查詢它工作正常,除了一件事。當我有 特定數量的購買產品,我還沒有賣給 任何人(甚至不是1件),它不想顯示在查詢中。
  • 我希望產品在查詢中顯示,並且可用的 數量是購買數量。所以不管怎樣,如果它的值爲0並且只是將購買數量寫入該字段,則跳過銷售價值 。

回答

0

如果您沒有售出的數量,您的金額實際上變爲購買空數量,這將導致無法回答。

您應該允許通過使用[購買] - (Nz([Sold],0))來計算零值。

+0

感謝您的答覆。我試過了,但它仍然不想顯示它,但是,計算仍然有效,所以我認爲該功能正常。 –

+0

有沒有一種方法可以在product_ID的條件中編寫來向他們展示所有內容? –

0

我進入SQL視圖並將INNER JOIN更改爲RIGHT JOIN,它完成了這項工作。

SELECT tblProduct.Product_ID, tblProduct.ProductName, Nz([Purchased],0) AS 
 
PurchasedQuantity, Nz([Sold],0) AS SoldQuantity, [PurchasedQuantity]-(Nz([SoldQuantity],0)) 
 
AS [Available] FROM qrySoldProducts RIGHT JOIN (qryPurchasedProducts RIGHT JOIN 
 
tblProduct ON qryPurchasedProducts.Product_ID = tblProduct.Product_ID) ON 
 
qrySoldProducts.Product_ID = tblProduct.Product_ID;