PostgreSQL Vistas: Hacer referencia a un campo calculado en otro campo calculado
-
24-09-2019 - |
Pregunta
Tengo la misma pregunta que # 1895500 , pero no con PostgreSQL MySQL.
¿Cómo puedo definir una visión que tiene un campo calculado, por ejemplo:
(mytable.col1 * 2) AS times_two
... y crear otro campo calculado que se basa en la primera de ellas:
(times_two * 2) AS times_four
...
Solución
En función de lo pesado que es el formla, se podría utilizar una subconsulta:
select inner.*, times_two * 2 from
(select mycol * 2 as times_two from table) sub
O reescribir el cálculo:
select mycol * 2, mycol * 2 * 2 from table
Otros consejos
Utilice esta declaración
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 bajo: CC-BY-SA con atribución
No afiliado a StackOverflow