Re: [PERFORM] Set-Returning Functions WAS: On the performance of views

From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Bill Moran <wmoran(at)potentialtech(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: [PERFORM] Set-Returning Functions WAS: On the performance of views
Date: 2004-01-29 23:17:19
Message-ID: 200401291517.19647.josh@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance pgsql-sql

Bill,

> I don't understand at all. If I do "SELECT * FROM
> set_returning_function()" and all I'm going to do is iterate through the
> columns and rows, adding them to a two dimensional array that will be
> marshalled as a SOAP message, what about not knowing the nature of the
> return set can cause me to get no data?

Because that's not the syntax for a function that returns SETOF RECORD.

The syntax is:

SELECT *
FROM set_returning_function(var1, var2) AS alias (col1 TYPE, col2 TYPE);

That is, if the function definition does not contain a clear row structure,
the query has to contain one.

This does not apply to functions that are based on a table or composite type:

CREATE FUNCTION .... RETURNS SETOF table1 ...
CREATE FUNCTION .... RETURNS SETOF comp_type

Can be called with:

SELECT * FROM some_function(var1, var2) as alias;

What this means is that you have to know the structure of the result set,
either at function creation time or at function execution time.

>
> One of the things I love about working with open source databases is I
> don't see a lot of that. The people on these lists are almost always
> smarter than me, and I find that comforting ;)

Flattery will get you everywhere.

--
Josh Berkus
Aglio Database Solutions
San Francisco

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Reece Hart 2004-01-30 00:31:39 query optimization differs between view and explicit query
Previous Message Jack Coates 2004-01-29 22:26:56 Re: query optimization question

Browse pgsql-sql by date

  From Date Subject
Next Message Josh Berkus 2004-01-29 23:22:13 Re: java.lang.StringIndexOutOfBoundsException: String index
Previous Message mohan 2004-01-29 20:50:21 Re: java.lang.StringIndexOutOfBoundsException: String index