Visualizações PostGresql: Referência de um campo calculado em outro campo calculado
-
24-09-2019 - |
Pergunta
Eu tenho a mesma pergunta que #1895500, mas com o PostgreSQL não o MySQL.
Como posso definir uma visão que possui um campo calculado, por exemplo:
(mytable.col1 * 2) AS times_two
... e crie outro campo calculado baseado no primeiro:
(times_two * 2) AS times_four
...?
Solução
Dependendo de quão pesado é o formla, você pode usar uma subconsência:
select inner.*, times_two * 2 from
(select mycol * 2 as times_two from table) sub
Ou reescrever o cálculo:
select mycol * 2, mycol * 2 * 2 from table
Outras dicas
Use esta declaração
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 ;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow