#oracle
#Oracle
Вопрос:
У меня есть три таблицы
Таблица1, Таблица2 и Таблица3.
Таблица 1 с идентификатором столбца. Таблица 2, имеющая имена столбцов ID, Name. Третья таблица, имеющая имя столбца Name.
Теперь я хочу восстановить идентификатор из таблицы1, который есть в Таблице2, с помощью, чтобы имя, связанное с идентификатором в таблице to, было в Таблице3.
Table1.ID=Table2.ID (Table2.Name=Table3.Namw).
Без использования оператора IN.Только объединения.
Ответ №1:
select table1.id, table2.name
from table1
join table2 on table2.id = table1.id
join table3 on table3.name = table2.name
Ответ №2:
select distinct t1.ID
from Table1 t1
,Table2 t2
,Table3 t3
where t1.ID = t2.ID
and t2.Name = t3.Name
;
или
select t1.ID
from Table1 t1
where exists (
select 1
from Table2 t2
,Table3 t3
where t1.ID = t2.ID
and t2.Name = t3.Name
);