Thread: where column in ARRAY
Without building up a dynamic query is it possible to: create or replace function t1(a int[]) as $$ ... select * from t1 where c in a; // eg in spite of in (1,2,3); or just obtain a similar effect? -- Ivan Sergio Borgonovo http://www.webthatworks.it
Hi, http://www.postgresql.org/docs/current/static/arrays.html # SELECT 1 = ANY ('{1,2,3}'::integer[]); ?column? ---------- t Ludo On Wed, Oct 22, 2008 at 2:46 PM, Ivan Sergio Borgonovo <mail@webthatworks.it> wrote: > Without building up a dynamic query is it possible to: > > create or replace function t1(a int[]) as > $$ > ... > select * from t1 where c in a; // eg in spite of in (1,2,3); > > or just obtain a similar effect? > > -- > Ivan Sergio Borgonovo > http://www.webthatworks.it > > > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general >
On Wed, 22 Oct 2008 14:46:35 +0200 Ivan Sergio Borgonovo <mail@webthatworks.it> wrote: > Without building up a dynamic query is it possible to: > > create or replace function t1(a int[]) as > $$ > ... > select * from t1 where c in a; // eg in spite of in (1,2,3); > > or just obtain a similar effect? tired rally tired... I didn't understand the example in the manual where on the left side there is a constant and the column is the array. ANY works the other way around as well. select * from t1 where c=any(a); too much assembly language in my youth. Sorry for the noise. -- Ivan Sergio Borgonovo http://www.webthatworks.it