2014-02-14 2 views
0

У меня есть две таблицы в MySQL,MySQL извлечения данных, начиная с присоединяемой таблицы

первым, как это:

ID INFO1 INFO2 INFO3 INFO4 INFO5 
1 abc cde fgh ecc ecc 
2 xxx yyy zzz ecc ecc 
3 abc cde fgh ecc ecc 
4 abc cde fgh ecc ecc 

второй, как это:

ID1 ID2 INFO_F 
1 2 10 
2 3 23 
3 1 61 
. . . 

Где ID1 и ID2 - это те же идентификаторы первой таблицы.

Теперь мне нужна третья таблица, как это:

INFO1_ID1 INFO1_ID2 INFO2_ID1 INFO2_ID2 INFO3_ID1 INFO3_ID2 INFO_F 
    abc  xxx  cde  yyy  fgh  zzz  10 

для всех записей в table2.

Я надеюсь, что это понятно ...

Заранее спасибо за помощь !!

ответ

0

Вы должны присоединиться к одной и той же таблице дважды.

SELECT t11.*,t12.*,t2.* FROM t2 
LEFT JOIN t1 as t11 ON t1.ID = t2.ID1 
LEFT JOIN t1 as t12 ON t12.ID = t2.ID2 
+0

Спасибо это то, что я искал !!!!! – inzirio

0

Я думаю, вы можете использовать соединение, пока вы конкретно называете результаты и таблицы. Это может помочь вам (вам нужно:

SELECT 
    id1, id2, info_f, 
    tb1a.id AS id1fromtb1, tb1a.INFO1 as info1fromtb1, 
    tb1b.id, tb1b.INFO1 
FROM table2 
JOIN table1 as tb1a on table2.id1=tb1a.id 
JOIN table1 as tb1b on table2.id2=tb1b.id 

http://sqlfiddle.com/#!2/f0744/4

Смежные вопросы