2016-08-11 3 views
1

У меня есть две таблицы T1, T2, как показано ниже:Нужна помощь, чтобы сделать SQL Query

T1 с ColumnName ID, Description и T2 с ColumnName ID1, ID2

Здесь ID1 и ID2 связаны друг с другом one to many (ID1- > ID2).

ID1 и ID2 как существует в T1.ID

Теперь результат должен быть в формате:

ID1 | ID1_Description | ID2 | ID2_Description 
---- --------------- --- --------------- 

Любые выводы будут оценены.

Заранее благодарен!

+0

Вы используете MySQL или Oracle. Два разных продукта, с некоторыми различиями SQL. – jarlh

+4

Добавьте пример данных таблицы и ожидаемого результата. Также покажите нам свою текущую попытку запроса. – jarlh

+0

Удален тег MySQL. Я предполагаю, что если вы столкнулись с проблемой указания точной версии Oracle, то тег MySQL был добавлен по ошибке. – sstan

ответ

1

Вам нужно два присоединяется для этого:

select t2.id1, t1a.description as description_1, 
     t2.id2, t1b.description as description_2 
from t2 join 
    t1 t1a 
    on t2.id1 = t1a.id join 
    t1 t1b 
    on t2.id2 = t1b.id; 

Это стандарт SQL и должен работать в любой базе данных.

+0

Спасибо, это работает! –

0
select t2.id1 "TD1", t1.description "ID1_description", t2.id2 "ID2", t12.description "ID2_Description" 
from t2 inner join t1 on t2.id1=t1.id inner join t1 t12 
on t1.id=t12.ID2; 

попробовать этот запрос и дайте мне знать, если это работает

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