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... :)
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com