Re: Is this a feature ?

From: Joel Burton <joel(at)joelburton(dot)com>
To: David BOURIAUD <david(dot)bouriaud(at)ac-rouen(dot)fr>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Is this a feature ?
Date: 2002-06-04 17:26:32
Message-ID: Pine.LNX.4.30.0206041325130.22841-100000@temp.joelburton.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Tue, 4 Jun 2002, David BOURIAUD wrote:

> Hi the list !
> I've read the docs, and found that you could concatenate two or more strings
> in one select statement like this :
> select
> civ || name || forname as identity
> from
> person;
>
> This just works fine and returns rows with only one column named identity.
> So far, if one of the fields (civ, name or forname) is null, identity is
> null... That doesn't seems right, since it means that 1+2+0 = 0 !!!!
> Has anybody else seen the same strange behaviour ? And is there a way to work
> this around ?

Yes, it's a feature, and yes, it's the standard.

No, it's not like 1+2+0=0. It's like 1+2+UNKNOWN=UNKNOWN, which is exactly
correct. NULL is __not__ the same thing as 0 or empty string; it
represents an unknown value.

Use the COALESCE function to turn a NULL value into something else.

- J.
--

Joel BURTON | joel(at)joelburton(dot)com | joelburton.com | aim: wjoelburton
Independent Knowledge Management Consultant

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Matthew Price 2002-06-04 20:37:30 Updating a table from another table
Previous Message James Orr 2002-06-04 15:14:36 Re: Is this a feature ?