2014-09-12 3 views
0

Рабочий источникOracle SQL добавить осталось присоединиться к той же таблице

SELECT T1.ref, T2.rtiers , T3.nom1 
FROM T1, T2, T3 
WHERE T2.code = T1.rempl AND T3.code = T1.rtiers 

Пожалуйста, помогите с правильным синтаксисом, чтобы добавить одну таблицу к существующим присоединяется:

not working 
SELECT T1.ref, T2.rtiers, T3.nom1, N.nom1 
FROM T1, T2, T3 
WHERE T2.code = T1.rempl 
    AND T3.code = T1.rtiers 
    AND T3.alias=T2.rtiers(+) AS N 

not working 
SELECT T1.ref, T2.rtiers, T3.nom1, N.nom1 
FROM T1, T2, T3, (LEFT JOIN T3 ON T3.alias=T2.rtiers) N 
WHERE T2.code = T1.rempl 
    AND T3.code = T1.rtiers 
+0

Pls более конкретным. Какая у вас проблема? – Westranger

+0

Я хочу добавить T3 дважды 1st-T3.code = T1.rtiers 2-левое соединение T3 на T2, синтаксисы выше не работают – Maxrem

ответ

0

Как это:

SELECT T1.ref, T2.rtiers , T3.nom1, N.nom1 as nom1_outer 
FROM T1, T2, T3, T3 N 
WHERE T2.code = T1.rempl 
AND T3.code = T1.rtiers 
AND N.alias(+) = T2.rtiers 

или лучше

SELECT T1.ref, T2.rtiers , T3.nom1, N.nom1 as nom1_outer 
FROM T1 
JOIN T2 ON T2.code = T1.rempl 
JOIN T3 ON T3.code = T1.rtiers 
LEFT JOIN T3 N ON N.alias = T2.rtiers 
+0

Спасибо за сверхбыстрый ответ! Но мне нужно дважды SELECT T3.nom1 и (NOM1 от join) – Maxrem

+0

Теперь я понимаю - я отредактировал свой ответ. –

+0

Спасибо! работал! – Maxrem

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