Re: syntax sugar for conditional check - Mailing list pgsql-hackers

From David G. Johnston
Subject Re: syntax sugar for conditional check
Date
Msg-id CAKFQuwY0x4bHyvmjn+2zthVuF4FUeQo6N70nWczsF0_M8moRTA@mail.gmail.com
Whole thread Raw
In response to Re: syntax sugar for conditional check  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
List pgsql-hackers
On Fri, Apr 1, 2016 at 3:22 PM, Jim Nasby <Jim.Nasby@bluetreble.com> wrote:
On 4/1/16 1:08 PM, Tom Lane wrote:
Jim Nasby <Jim.Nasby@BlueTreble.com> writes:
Rather than this, I think an exclusive-or operator would be a lot more
useful. The only difficulty I run into with CHECK constaints is when I
want to ensure that only ONE condition is true.

"bool != bool" works as XOR.  If you need "exactly one of N" you could
do something like "(cond1::int + cond2::int + ...) = 1".  We could
wrap some syntactic sugar around either of these, but it's not clear
to me that it'd be any more useful than a custom SQL function.

It would prevent having to re-create that function every time... :)

​And it would nicely complement our recent addition of "
num_nonnulls
​(variadic "any")​"

David J.

pgsql-hackers by date:

Previous
From: Robbie Harwood
Date:
Subject: Re: [PATCH v11] GSSAPI encryption support
Next
From: "Shulgin, Oleksandr"
Date:
Subject: Re: More stable query plans via more predictable column statistics