Re: Boolean operators without commutators vs. ALL/ANY - Mailing list pgsql-hackers

From Florian Pflug
Subject Re: Boolean operators without commutators vs. ALL/ANY
Date
Msg-id F72EFDBD-F2E5-4201-BBD2-9BC1908DC131@phlo.org
Whole thread Raw
In response to Re: Boolean operators without commutators vs. ALL/ANY  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On Jun17, 2011, at 18:00 , Robert Haas wrote:
> On Fri, Jun 17, 2011 at 11:46 AM, Alvaro Herrera
> <alvherre@commandprompt.com> wrote:
>> I guess this wouldn't be much of a problem if you could use ANY/ALL with
>> a function instead of an operator, c.f. map().
> 
> Yeah.  Or really what you want is a lambda-expression, rather than a
> predefined function.
> 
> fold(bool_and, map { val ~ $0 } array)

Yeah, to bad we can't just write SELECT BOOL_AND(val ~ e) FROM UNNEST(array)
Hey...wait a minute... ;-)

(I guess you actually meant fold(bool_and, map { val ~ $0 } array)
which the equivalent sub-select SELECT BOOL_AND(e ~ val) FROM UNNEST(array))

Still, you can't put that into a CHECK constraint (because it
counts as sub-select) and it's considerable longer and harder
to read then val = ANY(array)

best regards,
Florian Pflug



pgsql-hackers by date:

Previous
From: "Ross J. Reedstrom"
Date:
Subject: Re: Boolean operators without commutators vs. ALL/ANY
Next
From: Florian Pflug
Date:
Subject: Re: Boolean operators without commutators vs. ALL/ANY