Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Re: Sumar columnas calculadas



2008/4/29 Arturo <arturomunive(at)gmail(dot)com>:

>  SELECT
>  campo 1,
>  campo 2,
>  funcion1(campo3),
>  funcion2(campo4),
>  (funcion1(campo3) * funcion 2(campo4))
>  FROM
> ...

>  donde las funciones pueden ser calculo pesado

>  Entonces yo creo que al usar asi las funciones cada una se ejecuta dos
> veces
>  Mi pregunta es, existe algo como:

>  SELECT
>  campo 1 as "R1",
>  campo 2 as "R2",
>  funcion1(campo3) as "R3",
>  funcion2(campo4) as "R4",
>  ("R3" * "R4") as "R5",
>  FROM
>  ...

>  Obviamente asi no funciona (si no no lo preguntaría), pero hay alguna forma
> de hacer eso????

Podrias hacerlo con subconsultas, o vistas...

Veamos:
Select
x.*,
(x.R3 * x.R4) as R5
from
(
SELECT
campo 1 as "R1",
campo 2 as "R2",
funcion1(campo3) as "R3",
funcion2(campo4) as "R4"
from ...
) as x

>  Igual mientras tanto, sigo buscando por internet, si encuentro algo les
> aviso, si lo encuentran ustedes igual :)

La subconsulta la puedes enviar a una vista y luego el otro select
sale más facil... como mejor te parezca..
puedes darte una vuelta por:

http://www.postgresql.org/docs/7.4/static/queries-table-expressions.html

Ah! ojo que el link es para la version que yo uso, tu deberías buscar
para la version que tú utilizas...

Saludos!
-- 
§~^Calabaza^~§ from Villa Elisa, Paraguay



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group