Infix Function?

From: Peter Fein <pfein(at)pobox(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Infix Function?
Date: 2005-06-26 20:42:25
Message-ID: 42BF1331.4040504@pobox.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi-

I've defined an XOR function as:

CREATE OR REPLACE FUNCTION xor(bool, bool)
RETURNS bool AS
'SELECT ($1 OR $2) AND NOT ($1 AND $2);'
LANGUAGE 'sql' IMMUTABLE STRICT;

Is there anyway to create an infix version of this? I'd really like be
able to write (where a..d are some boolean conditions):

a XOR b XOR c XOR d

instead of:

xor(a, xor(b, xor(c, d)))

which gets a little hard to understand as it gets long, esp. when mixed
with AND & OR.

I know one can do this with user-defined operators, but adding a #
operator for booleans seems ugly. I thought I saw a way to do this, but
now I can't find it in the manual... TIA.

--Pete

--
Peter Fein pfein(at)pobox(dot)com 773-575-0694

Basically, if you're not a utopianist, you're a schmuck. -J. Feldman

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Joe 2005-06-26 20:49:16 Re: Win32 users?
Previous Message Teunis Peters 2005-06-26 20:29:22 MacOSX, fink, missing readline/readline.h