PostgreSQL Просмотров: ссылка на одно рассчитанное поле в другом рассчитанном поле

StackOverflow https://stackoverflow.com/questions/2385791

Вопрос

У меня такой же вопрос, как #1895500, но с PostgreSQL не MySQL.

Как я могу определить представление, которое имеет рассчитанное поле, например:

 (mytable.col1 * 2) AS times_two

... и создать еще одно рассчитанное поле, которое основано на первом:

 (times_two * 2) AS times_four

...?

Это было полезно?

Решение

В зависимости от того, насколько тяжелым является FORMLA, вы можете использовать подзапрос:

select inner.*, times_two * 2 from
(select mycol * 2 as times_two from table) sub

Или переписать вычисление:

select mycol * 2, mycol * 2 * 2 from table

Другие советы

Используйте это утверждение

 Создайте просмотр view_name в качестве выбора column_name * 2 как new_col1, column_name * 4 как new_col2 из table_name; Выберите * от View_Name; Если вы хотите использовать значения столбца в этом представлении. Используйте следующие вещи Create View New_Viwe AS SELECT NEW_COLL1 * 2 как Final_Column из View_name; Выберите * из New_View;
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top