2016-07-25 60 views
0

我正在嘗試製作所有項目的彙總表。我有一個包含10個用戶的原始數據表,他們分別具有不同的項目。有最多3個不同的項目,我想做一個計數,看看每個人有多少項目。以下是我的代碼。MS Access SQL左連接全部給出0

Select b.Country,b.UserID,Num_including_fruits, Apple,Orange 
from 

(((SELECT o.Country,o.UserID, IIF(ISNULL(Count(o.UserID)),0,Count(o.UserID)) 
AS Num_including_fruits 
FROM [SEA2_View] as o 
GROUP BY o.UserID, o.Country 
ORDER BY Country)as b 

LEFT JOIN 

(SELECT o.Country,o.UserID,IIF(ISNULL(Count(o.UserID)),0,Count(o.UserID) 
    AS Apple 
    FROM [APAC2_View] as o 
    WHERE o.fruit_status <>"fresh" AND o.HWType = "Apple" 
    GROUP BY o.Country,o.UserID)as d 

    ON (b.UserID = d.UserID)) 

    LEFT JOIN 

    (SELECT o.Country,o.UserID,IIF(ISNULL(Count(o.UserID)),0,Count(o.UserID)) 
    AS Orange 
    FROM [SEA2_View] as o 
    WHERE o.fruit_status <>"fresh" AND o.HWType = "Orange" 
    GROUP BY o.Country,o.UserID)as e 
    ON (d.UserID = e.UserID)) 
    ; 

第一次連接返回正確的結果,但第二次連接返回所有0,這是不正確的。所以請幫忙!如果涉及到SQL連接,我將不勝感激任何有關最佳實踐的建議。非常感謝!

回答

0

您確定您沒有表格命名錯誤嗎?

你第一次參加[SEA2_View][APAC2_View]。第二次加入[SEA2_View]自己。