2014-04-10 59 views
0

我(這裏爲了簡單起見,映射表I顯示只記錄BNO = 14M301SQL內聯接返回重複在訪問表

BNO EID EDescription 

14M301 4010  W Harness 
14M301 5027 E Wiring part 

,我有另一個表(鹼)含有對應於7點的記錄BNO = 14M301

Prev  Base Sufv Sequence CPSD BNO  BNO-CPSC 
    3M5T 14M301  AAB  234 180101 14M301  14M301-180101 
    3M5T 14M301  ABB  234 180101 14M301  14M301-180101 
    3M5T 14M301  SB  234 180101 14M301  14M301-180101 
    AV6T 14M301  DB  234 180101 14M301  14M301-180101 
    AV6T 14M301  FB  234 180101 14M301  14M301-180101 
    F1F1 14M301  AB  294 030304 14M301  030304-180101 
    F1F1 14M301  BA  294 030304 14M301  030304-180101 

在這裏,我將兩個表與BNO我使用innerjoin,是retrives 14條記錄,而不是即BNO-14M301 = 14次。但在基地表格只包含7.我的查詢

SELECT Base.Prev, Base.Base, Base.Sufv,Base.Sequence, Base.CPSD, Base.BNO, Base.[BNO - CPSD], Mapping.EID AS [E ID], Mapping.[EDescription] AS [E Description] 
FROM Base INNER JOIN Mapping ON Base.BNO = Mapping.BNO WHERE (((Mapping.EID) Is Not Null)); 
+0

和那是什麼輸出?你真正想要的輸出是什麼? – pquest

+0

您的查詢將來自映射表的兩行中的每一行與Base表中的七行相結合,總共有14行,您要查找的結果是什麼? – Goon10

+0

也許結果不是你想要的。 BNO 14M301有2條記錄,每條記錄返回7條記錄。你想達到什麼目的? – DidIReallyWriteThat

回答

0

的BNO 14M301出現在你的映射表的兩倍。因此,當您連接到Base表時,您將獲得全部7條記錄兩次(映射表中每個連接行一次)。