сокращение записи запроса с выборкой из нескольких таблиц

krafty

new Exception
сокращение записи запроса с выборкой из нескольких таблиц

не подскажите можно ли в таком запросе объединить селекты из одной таблицы и чтобы при этом можно было воспользоваться алиасами

[sql]
select
*,
(select f1 from t1 where id=id2) as f1,
(select f2 from t1 where id=id2) as f2,
(select f3 from t1 where id=id2) as f3,

(select f1 from t2 where id=id2) as f4,

from main_tbl where id=id2
[/sql]
 

zerkms

TDD infected
Команда форума
хорошим тоном является формулировка изначальной задачи, а не своего непонятного и кривого решения непонятно чего
 

krafty

new Exception
zerkms
тысячу извенений

необходимо сделать выборку из нескольких таблиц, связанных с главной по полю id2. причем из некоторых таблиц может выбираться несколько полей. мне приходится перечислять все эти подзапросы.

для сокращения их можно объединить в один:

select f1,f2,f3 from t1 where id=id2

но как тогда использовать алиасы?
 

Ermitazh

Новичок
Select f1 as f1, f2 as f2, f3 as f3 from t1,t2,main_tbl
where t1.id= main_tbl.id2 and t2.id=main_tbl.id2
вроде так...

Опиши подробней плз, id2 если я правильно понял то из таблицы main_tbl
 

maxru

МИФИст
Ermitazh, ты прав.
От себя добавлю, что этот тип записи называется CROSS JOIN.
 
Сверху