2016-10-04 2 views
0

Я хотел бы получить запрос от «T_Tester (таблица 1 #)», но некоторые данные поступают из «T_handler (таблица 2 #)». Я попробовал «внутреннее соединение», но не работал.MySQL - Присоедините запрос данных из нескольких таблиц

Мой код здесь, я уверен, что-то пошло не так ...

 select * from T_Tester 
    inner join T_handler where T_handler.Tester=T_Tester.Tester; 

Таблица Пример:

======================== 
    T_Tester (table 1#) 
    ======================== 
    Tester  Data 
    Tester-001 qqq 
    Tester-001 www 
    Tester-001 eee 
    Tester-001 rrrr 
    Tester-001 ttt 
    Tester-001 yyyy 

    ======================== 
    T_handler (table 2#) 
    ======================== 
    Tester  Handler 
    Tester-001 Handler-006 
    Tester-002 Handler-005 
    Tester-003 Handler-004 
    Tester-004 Handler-003 
    Tester-005 Handler-002 
    Tester-006 Handler-001 

Нужна помощь:

выход я хочу. Сочетание двух таблиц с этой последовательностью: «T_Tester.Tester», «T_handler.Handler», «T_Tester.Data».

======================== 
    Query output 
    ======================== 
    Tester  Handler  Data 
    Tester-001 Handler-006 qqq 
    Tester-001 Handler-006 www 
    Tester-001 Handler-006 eee 
    Tester-001 Handler-006 rrrr 
    Tester-001 Handler-006 ttt 
    Tester-001 Handler-006 yyyy 

ответ

0

Попробуйте left outer join.

select distinct 
    T.Tester, 
    H.Handler, 
    D.Data 
from 
    T_Tester T 
     left outer join T_handler H 
      on H.Tester = T.Tester 
+0

левое внешнее соединение не работает с 'где'? не удалось выполнить. Затем, когда я меняю 'where' на 'on', 'Handler' возвращает null. Есть идеи? –

+0

Изменить «где» на «на» – openwonk

+0

Хорошее самовосприятие, чтобы не отвечать на вопросы в конце длинного дня;) – openwonk

0
select t1.Tester,t1.Handler,t2.Data from T_handler t1 inner join T_Tester t2 where t1.Tester = t2.Tester; 
Смежные вопросы