On Oct 26, 2004, at 9:49 AM, Sean Davis wrote:
>>
>> You could return SETOF RECORD but then your queries will need to
>> provide a column definition list. Another way would be to create
>> a custom type that describes a result record and return SETOF that
>> type. But before you do any of this, perhaps you should think about
>> whether you really need a function at all, or whether you can use
>> views and WHERE clauses.
>>
>
> Michael,
>
> Thanks for the reply. The reason all of this comes up is that I have
> an application in which the user can create "sets" of IDs. I then
> want to be able to do logical operations on the sets of IDs and then
> return the database objects based on the ID's in those sets. I tried
> the function version using "ANY" and the simple query using "IN" and
> found an order of magnitude difference in speed (IN is faster). So,
> it appears that using views and where clauses is the way to go here.
> One last question--is there a limit to the length of a SQL query (in
> terms of characters), as some of these sets could be very large (up to
> 40000 integers)?
>
Sorry. Answered (partially) my own question. max_expr_depth is set to
10000 as default on my MacOS installation (7.4.3).
Sean