2010/8/7 Tom Lane <t...@sss.pgh.pa.us>: > "David E. Wheeler" <da...@kineticode.com> writes: >> I think that some sort of variadic pairs would be useful for this. But since >> there is no core "ordered pair" data type, I don't think you're going to get >> too far. > > It's not immediately clear to me what an ordered-pair type would get you > that you don't get with 2-element arrays. > > A couple of quick experiments suggest that 2-D arrays might be the thing > to use. They're easy to construct: > > regression=# select array[[1,2],[3,4]]; > array > --------------- > {{1,2},{3,4}} > (1 row) > > and you can build them dynamically at need: > > regression=# select array[[1,2],[3,4]] || array[5,6]; > ?column? > --------------------- > {{1,2},{3,4},{5,6}} > (1 row) > > This is not exactly without precedent, either: our built-in xpath() > function appears to use precisely this approach for its namespace-list > argument.
it's one variant, but isn't perfect a) it expects so key and value are literals b) it expects so all values has same types - what is usually what we need, but not necessary c) isn't too readable - I am sorry so I am repeating - it is same reason, why people will prefer a VARIADIC function before function with array - but I can accept, so this is my view of world Regards Pavel Stehule > > regards, tom lane > -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers