Представления PostgreSQL: ссылка на одно вычисляемое поле в другом вычисляемом поле - PullRequest
5 голосов
/ 05 марта 2010

У меня тот же вопрос, что и # 1895500 , но с PostgreSQL не MySQL.

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

 (mytable.col1 * 2) AS times_two

... и создайте другое вычисляемое поле, основанное на первом:

 (times_two * 2) AS times_four

...

Ответы [ 2 ]

6 голосов
/ 05 марта 2010

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

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

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

select mycol * 2, mycol * 2 * 2 from table
0 голосов
/ 05 марта 2010

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

 
CREATE  VIEW  view_name as  SELECT  column_name*2 as new_col1 , column_name*4 as new_col2  from table_name ; 

select * from view_name ; 

If you want use this view column values. use following things 

create view new_viwe as select new_col1*2 as final_column from view_name ; 

select * from new_view ; 


...