Kernel escribió:

> Mis dudas :
> 
> - ¿la segunda vez  que intente hacer un loop, esta en cache y no cuesta ?

No.

> - ¿Mejor lo vuelco a un record.array y recorro el array las veces que
> necesite? ¿como lo vuelco?

Podrías crear una tabla temporal con los resultados, CREATE TEMP TABLE
fff AS SELECT ..

> - Declaro un cursor y solo lo habro una vez (con el OPEN) y luego lo recorro
> con fecth las veces que necesite?

Es fastidioso hacer esto en plpgsql.

> - y la ultima que se me ocurre y mas limpia, si utilizo sentecias select
> sobre esta que actuaria como una subconsulta que si esta en cache iria
> rapido (esto ultimo es algo que creo yo)

No entendí.  Si quieres usar los resultados de una consulta varias veces
"dentro" de otra consulta, puedes definirla como un CTE usando la
cláusula WITH, como
WITH fff AS (SELECT ..)
 SELECT a. ... FROM fff


-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a