Re: can i use an array as a table (in the from clause)

From: Richard Broersma Jr <rabroersma(at)yahoo(dot)com>
To: Michael Glaesemann <grzm(at)seespotcode(dot)net>, "Coarr, Matt" <mcoarr(at)mitre(dot)org>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: can i use an array as a table (in the from clause)
Date: 2007-08-13 16:32:48
Message-ID: 479710.12327.qm@web31813.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

--- Michael Glaesemann <grzm(at)seespotcode(dot)net> wrote:
> > Is there some way that I can treat a two dimensional array as a table
> > that can be referenced in the from clause?
>
> I know of no way off hand, and if so, not easily. This is a pretty
> clear sign that you shouldn't be using arrays in this context and
> should rethink your schema.

The closest thing to an array (but is actually a derived table) is achieved using the VALUES
predicate.

SELECT col1, avg( col2 )
FROM ( VALUES ( 1, 1 ), ( 1, 2 ),
( 2, 3 ), ( 2, 4 )) AS ValuesTable( col1, col2 )
WHERE col2 < 5
GROUP BY col1
ORDER BY col1;

col1 | avg
------+--------------------
1 | 1.5000000000000000
2 | 3.5000000000000000
(2 rows)

Regards,
Richard Broersma Jr.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message novnov 2007-08-13 16:36:12 Running a stored procedure via pgagent, need an example
Previous Message Scott Marlowe 2007-08-13 16:30:37 Re: Persistent connections in PHP