2014-04-10 4 views
0

나는 내가 BNO = 14M301SQL 내부는

BNO EID EDescription 

14M301 4010  W Harness 
14M301 5027 E Wiring part 

에 대한 레코드 만 표시 그리고 내가 다른 테이블 (베이스)에 해당하는 7 개 레코드가 포함되어 있습니다 (여기에 단순위한 매핑 테이블을 액세스 테이블에서 반환 중복 가입 BNO = 여기에 내가 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 

. 나는 innerjoin 사용하고 있습니다. 그것은 retrives 14 개 기록 대신 7, 즉 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

쿼리는 매핑 테이블의 2 행과 기본 테이블의 7 행을 합하여 총 14 행을 얻습니다. 원하는 결과는 무엇입니까? – Goon10

+0

결과가 원하는 바가 아닐 수도 있습니다. BNO 14M301에 2 개의 레코드가 있으며 각각 7 개의 레코드가 반환되었습니다. 무엇을 성취하려고합니까? – DidIReallyWriteThat

답변

0

BNO 14M301 나타납니다가 포함되어 있습니다. 따라서 Base 테이블에 조인 할 때 매핑 테이블의 각 조인 된 행에 대해 한 번씩 7 개의 레코드가 두 번 표시됩니다.