Re: uso de select (function()).* es mucho mas lento que select * from function()

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: Raw Message | Whole Thread | 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

In response to

Responses

Browse pgsql-es-ayuda by date

  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