The following bug has been logged on the website:
Bug reference: 6690
Logged by: sergey
Email address: sergey-1987@yandex.ru
PostgreSQL version: 9.1.2
Operating system: FreeBSD 8.1
Description:=20=20=20=20=20=20=20=20
As I see in documentation,
http://www.postgresql.org/docs/current/static/functions-aggregate.html there
is an ambiguity with bool_or aggregate and ANY array operator, so bool_or
cannot has standard name ANY. So ANY should always mean array operator. But
such query produces syntax error:
select 1 =3D ANY((select ARRAY[1, 2]::integer[]))
I.e. when I try to check is some element in array, that is calculated in
subquery, I cannot. I can use:
select ARRAY[1] && (select ARRAY[1, 2]::integer[])
but what about ANY operator?
For example this works:
select 1 =3D ANY(ARRAY[1, 2]::integer[]);
select 1 in (select * from unnest(ARRAY[1, 2]::integer[]))