-----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Andy Colson Sent: Tuesday, January 10, 2012 11:20 AM To: David Johnston Cc: 'PostgreSQL' Subject: Re: string = any() > This still does not work, even in psql: > select 'bob' = any( '{''joe'', ''bob'' }'::varchar[] ) > > $$ ^ This works for me just fine....though I am not using psql; are > you having quoting issues? What error do you get? > It runs, but it returns false. I get false at least. I'm assuming you do to, otherwise something weird is going on. ----------------------------------------- I execute the following: SELECT 'bob' = ANY( '{ "joe", "bob" }'::varchar[] ); And it returns TRUE... This returns FALSE: SELECT 'bob' = ANY( '{ "joe", "dave" }'::varchar[] ); I didn't enable logging so I don't know exactly what the engine is seeing but using PostgreSQL Maestro that is what I am getting; and from the documentation it seems correct... I am using the "string_to_array()" function call where I do this kind of thing because I probably encountered the same Java API issue that you are with PHP; but since passing in the delimited string and splitting it isn't that difficult I am not all that concerned. You need to embed the "string_to_array" inside the prepared statement and pass only scalars via the API. So: prepare x as select 'bob' = any(string_to_array($1, ',')::varchar[]); execute x ('joe,bob,billy'); David J. -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general