From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Hannu Krosing <hannu(at)2ndQuadrant(dot)com> |
Cc: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, Decibel! <decibel(at)decibel(dot)org>, Robert Haas <robertmhaas(at)gmail(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Peter Eisentraut <peter_e(at)gmx(dot)net>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: proposal sql: labeled function params |
Date: | 2008-08-23 21:43:42 |
Message-ID: | 8618.1219527822@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hannu Krosing <hannu(at)2ndQuadrant(dot)com> writes:
> On Sat, 2008-08-23 at 08:21 +0200, Pavel Stehule wrote:
>> record or hash table - it's implementation - second step. We have to
>> find syntax and semantic now.
> Why not just use some standard record syntax, like
> SELECT(value::type name, ...)
Yeah, that's one way. It also strikes me that hstore itself provides a
usable solution to this problem, though only for simple-string values.
That is, you could do something like
create function myfunc(hstore) returns ...
select myfunc('tag1' => '42' || 'tag2' => 'foobar' || ...);
Or, with the new variadic function support,
create function myfunc(variadic hstore[]) returns ...
select myfunc('tag1' => '42', 'tag2' => 'foobar', ...);
which is just a couple of quote marks away from the syntax Pavel
wants.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Joshua D. Drake | 2008-08-23 22:18:32 | Re: What in the world is happening on spoonbill? |
Previous Message | Tom Lane | 2008-08-23 21:23:52 | Re: What in the world is happening on spoonbill? |