| From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
|---|---|
| To: | Gerardo Herzig <gherzig(at)fmed(dot)uba(dot)ar> |
| Cc: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
| Subject: | Re: uso de select (function()).* es mucho mas lento que select * from function() |
| Date: | 2011-02-09 17:20:14 |
| Message-ID: | 1297271899-sup-458@alvh.no-ip.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-es-ayuda |
Excerpts from Gerardo Herzig's message of jue feb 03 15:45:38 -0300 2011:
> Hola chicos. Estoy teniendo problemas con la lentitud de una funcion.
> Estoy usando la funcion _xxfunction() dentro de un subselect, entonces
> uso su forma select (_xxfunction()).* (en lugar de select * from...,
> sino dentro del subquery me genera error sintactico), y el tema es que
> tarda mucho mas un modo que el otro:
>
> test=# SELECT (_xxfunction(123)).* ;
> (4 filas)
> Duración: 1069,465 ms
>
>
> test=# SELECT * from _xxfunction(123) ;
> (4 filas)
> Duración: 228,699 ms
>
> Alguna idea de porque de esto? Alguna alternativa?
> Gracias!
Si mal no recuerdo, al hacer ().* se ejecuta la función tantas veces
como columnas haya en el resultado. Quizás funcione algo como
select foo.* from (select * from _xxfunction(123) offset 0) as foo;
--
Álvaro Herrera -- Se vende casa en Ñuñoa: www.portalinmobiliario.com/993147
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Alvaro Herrera | 2011-02-09 17:29:08 | Re: [pgsql-es-ayuda] Dilema con Strroed procedures en Postgres |
| Previous Message | Gunnar Wolf | 2011-02-09 16:49:06 | Re: Considerar '' como nulo en carga de datos desde csv |