2016-06-14 13 views
0

Hier sind meine Beispieltabellen, ich brauche Hilfe, wie kann ich sie richtig abrufen, wie gezeigt.SQL Join Tabelle mit mehreren gemeinsamen Spalten

Table_1     Table_2 
| Im_ID | Im_Name |  | Im_ID | S_Im_ID | 
| 001 | ABC |  | 001 | 004 | 
| 002 | XYZ |  | 002 | 005 | 
| 003 | PQR |  | 003 | 006 | 
| 004 | STU | 
| 005 | DEF | 
| 006 | JKL | 

Ich möchte das Ergebnis wie folgt aus:

Result 
| Im_ID | S_Im_ID | Im_Name | S_Im_Name | 
| 001 | 004 | ABC | STU | 
| 002 | 005 | XYZ | DEF | 
| 003 | 006 | PQR | JKL | 

ich nicht in der Lage bin zu verstehen, wie Namen für beide im_id und s_im_id zu bekommen. Ich kann es für nur einen der ID tun.

Antwort

1

Das erfordert zwei JOIN Operationen die Verknüpfungstabelle mit Table_2, um beizutreten Table_1 sich:

SELECT t1.Im_ID, t3.Im_ID AS S_Im_ID, t1.Im_Name, t3.Im_Name AS S_Im_Name 
FROM Table_1 AS t1 
INNER JOIN Table_2 AS t2 ON t1.Im_ID = t2.Im_ID 
INNER JOIN Table_1 AS t3 ON t2.S_Im_ID = t3.Im_ID