Re: boolean to int

From: Alex Satrapa <alex(at)lintelsys(dot)com(dot)au>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: boolean to int
Date: 2004-03-16 00:15:35
Message-ID: 40564727.4030007@lintelsys.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Pavel Stehule wrote:
> create or replace function int2bool (integer) returns boolean as '
> select case when $1=1 then ''t''::boolean else ''f''::boolean end;
> ' language sql;

I'd do it slightly differently, if only to cater to the principle of least surprise:

create or replace function int2bool (integer) returns boolean as '
select case when $1=0 then false else true end;
' language sql

That way, 0 maps to false, any non-zero value becomes true.

> create or replace function bool2int (boolean) returns integer as '
> select case when $1 then 0 else 1 end; ' language sql;

And that's back-to-front ;)

create or replace function bool2int (boolean) returns integer as '
select case when $1 then 1 else 0 end;
' language sql

Thanks for the example of the use of casts.

Alex Satrapa

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Mage 2004-03-16 00:23:16 Re: boolean to int
Previous Message Tom Lane 2004-03-16 00:13:25 Re: Trigger loop question