2010-11-25 21 views
0

En bref, j'ai 2 tables qui ont des rangées 'équivalentes' l'une dans l'autre. Les équivalences sont maintenues dans une troisième table de mappage (qui mappe l'ID A à l'ID B). Dans une vue, je veux créer une vue consolidée qui montre:Consolider 2 tables via une table de mappage - Joints complets?

  • Toutes les entrées qui existent dans le tableau A, mais sans équivalent dans le tableau B (1 rang chacun)
  • Toutes les entrées qui existent dans le tableau B, mais ont pas d'équivalent dans le tableau A (1 rang chacun)
  • Toutes les entrées qui existent à la fois le tableau A et B (ligne unique par match A/B)

Il est plus facile d'expliquer graphiquement ...

J'ai le suivant scénario ng (indiqué sur l'image ci-dessous liée):

Current Scenarioalt text

Je suis sûr que c'est beaucoup plus simple qu'il n'y paraît - j'ai mâcher sur ce point pour un peu de temps et ne peut pas l'obtenir réalisable .

Répondre

0

Que diriez-vous juste

select a.ID as A_ID, a.Desc as A_Desc, b.ID as B_ID, b.Desc as B_DESC 
from Table_A as a left outer join Mapping_Table as m on a.ID = m.A_ID 
full outer join Table_B as b on m.B_ID = b.ID 
+0

qui a obtenu - je savais qu'il y avait quelque chose que je méconnais. Merci! –