-
Misha___ (12.01.12 12:47) [0]Добрый день!
Подскажите, пожалуйста, можно ли в запросе обратиться к вычисляемому полю, например:Select
(1 + 2) AS SM,
SM || "..."
FROM ...
На SM указывает "Column unknow".
Есть ли в Firebird возможность обращаться к таким полям? -
Медвежонок Пятачок © (12.01.12 13:19) [1]селект фром селект (если оно там есть)
либо сразу cast(1+2...) || '...' -
Misha___ (12.01.12 13:28) [2]
> Медвежонок Пятачок © (12.01.12 13:19) [1]
> либо сразу cast(1+2...) || '...'
это только для примера.
На деле в расчете участвуют несколько полей. И результат расчета используются в нескольких местах запроса. И чтобы не писать несколько раз одно и тоже хочу обращаться к результату по "имени".
>селект фром селект (если оно там есть)
Можно сделать процедуру, но может можно проще? -
Медвежонок Пятачок © (12.01.12 13:34) [3]На деле в расчете участвуют несколько полей
нуишто?
Можно сделать процедуру, но может можно проще?
см [1] -
select A.*, (A.C1 + 5) as C2
from
(
select (1 + 2) as C1 from rdb$database
) as A
Результат:C1 C2
3 8
Только, ИМХО, это слишком извратно. Проще надо быть. -
Misha___ (12.01.12 15:14) [5]Медвежонок Пятачок и Ega23, спасибо за помощь :)
-
> Медвежонок Пятачок и Ega23, спасибо за помощь :)
Незачто, конечно. Но ты всё равно 15 раз подумай, прежде чем так делать. Должно быть довольно веское обоснование, чтобы так делать. -
Виталий Панасенко (12.01.12 16:22) [7]CTE не поможет?
Firebird_2_1\doc\sql.extensions\README.common_table_expressions.txt