Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS SQL Server > Новый запрос по объекту предыдущего


Автор: Competitor 13.11.2006, 18:36
Каким образом можно одним запросом сначала получить запись из table1 по id, а затем запись из table2 по id (в table1 это поле называется countryId), определенном в результате поиска первого запроса?
Код

select *
from table1
where (id=205)

select *
from table2
where (id=68)


Автор: Vit 13.11.2006, 20:55
Код

select *
from table1 t1
Inner Join table2 t2 on t1.countryId=t2.id
where t1.id=205

Автор: Competitor 13.11.2006, 21:04
Vit, спасибо.
А как сделать так, чтобы выводился результат поиска в table1, а на следующей строке результат поиска в table2?

Автор: ТоляМБА 14.11.2006, 07:59
Код
select *
from table1
where (id=205)
UNION ALL
select *
from table2
where (id=68)
 Поля должны быть с одинаковым типом (или приведены к одному типу (юзай Cast или Convert)), ну и кол-во полей должно быть одинаковым, если у одной меньше чем у другой, юзай
Код
0 as NumerivField, '' as TextField

Автор: Vit 14.11.2006, 18:24
Любой букварь по базам данных -> искать по ключевым словам join и Union -> читать до полного просветления...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)