Re: BUG #2889: Syntax error: WHERE ANY(arrayfield) = N - Mailing list pgsql-bugs

From David Higgs
Subject Re: BUG #2889: Syntax error: WHERE ANY(arrayfield) = N
Date
Msg-id ac8e3f230701131139p3997a2f7j53eba52b355382@mail.gmail.com
Whole thread Raw
In response to Re: BUG #2889: Syntax error: WHERE ANY(arrayfield) = N  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: BUG #2889: Syntax error: WHERE ANY(arrayfield) = N  (Bruce Momjian <bruce@momjian.us>)
List pgsql-bugs
On 1/13/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "David" <higgsd@gmail.com> writes:
> > This statement works:
> > => SELECT * FROM sal_emp WHERE 10000 = ANY (pay_by_quarter);
>
> > But this does not:
> > => SELECT * FROM sal_emp WHERE ANY (pay_by_quarter) = 10000;
> > ERROR:  syntax error at or near "ANY" at character ...
>
> This is not a bug, it's the way the syntax works per SQL spec.
> ANY must immediately follow the operator it relates to.  See
> <quantified comparison predicate> syntax in the spec.
>
>                         regards, tom lane
>

Aha, I see it in the docs now, although it's still rather unintuitive.
 Could the appropriate section on arrays be crosslinked to the ANY/ALL
page, to preempt this question in the future?

Thanks.

--david

pgsql-bugs by date:

Previous
From: "michael"
Date:
Subject: BUG #2892: NULL problems, E_FAIL
Next
From: "Ilya Kogan"
Date:
Subject: BUG #2893: Non-standard theme explodes the installer.