2017-07-29 32 views
0

this simple group of tables,我想做一個庫存區分來自不同供應商的同等產品,但我得到一個「模糊性錯誤」,運行一個查詢我雖然可以工作。我不知道如何解決這個問題。獲取庫存SQL查詢的不明確性錯誤,其中兩個字段應該相等以進行計算。 MS-ACCESS

這是我試過的查詢:

SELECT tblProducts.product_Name, 
     tblProviders.provider, 
     Nz(Sum(tblIntakes.intake_QTY),0)- 
     Nz(Sum(tblExits.exit_QTY)) AS Stock 

FROM tblProviders, 
    (tblProducts LEFT JOIN 
    tblExits 
    ON tblProducts.product_ID = tblExits.product_ID 
    ) LEFT JOIN 
    tblIntakes 
    ON tblProducts.product_ID = tblIntakes.product_ID 

GROUP BY tblProducts.product_Name, tblProviders.provider; 
+0

你應該嘗試重寫查詢,而不'FROM'子句中使用逗號。 –

回答

0

您可能會在這種情況下使用子查詢:

SELECT 
    tblProducts.product_Name, 
    tblProviders.provider, 
    Nz((
    SELECT SUM(intake_QTY) 
    FROM tblIntakes 
    WHERE 
     tblIntakes.product_ID = tblProducts.product_ID AND 
     tblIntakes.provider_ID = tblProviders.provider_ID 
), 0) - 
    Nz((
    SELECT SUM(exit_QTY) 
    FROM tblExits 
    WHERE 
     tblExits.product_ID = tblProducts.product_ID AND 
     tblExits.provider_ID = tblProviders.provider_ID 
), 0) AS Stock 
FROM tblProviders, tblProducts; 
相關問題