Re: Difference between "in (...)" and "= any(...)" queries when using arrays - Mailing list pgsql-general

From Francisco Figueiredo Jr.
Subject Re: Difference between "in (...)" and "= any(...)" queries when using arrays
Date
Msg-id 438d02260905120827u62f9805cm63c634712dd50eef@mail.gmail.com
Whole thread Raw
In response to Re: Difference between "in (...)" and "= any(...)" queries when using arrays  (Richard Huxton <dev@archonet.com>)
List pgsql-general
On Tue, May 12, 2009 at 05:02, Richard Huxton <dev@archonet.com> wrote:
> Francisco Figueiredo Jr. wrote:
>>
>> Hi all!
>>
>> I was playing with "in (...)"  and "= any (...)" queries and found a
>> difference between them and I wonder:
>>
>> why this works:
>>
>> select * from table_of_integers where integer_column = any (array[5,6]);
>
> This checks if integer_column matches any value in the specified array.
>
>> select * from table_of_integers where integer_column in (array[5,6]);
>
> This checks if integer_column IS an array[5,6] (which it isn't).
>
> You probably want ... IN (5,6)
>
>> SOME is a synonym for ANY. IN is equivalent to = ANY.
>
> I think this is probably talking with respect to sub-queries.
>


Ahhhh, thank you very much for your feedback and for explaining it, Richard.

Now I understand it better.

--
Regards,

Francisco Figueiredo Jr.
Npgsql Lead Developer
http://www.npgsql.org
http://fxjr.blogspot.com
http://twitter.com/franciscojunior

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: Unable to access table named "user"
Next
From: Alvaro Herrera
Date:
Subject: Re: Could not open file "pg_clog/...."