Re: string || NULL ambiguity - Mailing list pgsql-hackers

From Thomas T. Thai
Subject Re: string || NULL ambiguity
Date
Msg-id 4092.63.226.186.156.1048149261.squirrel@mail.minnesota.com
Whole thread Raw
In response to Re: string || NULL ambiguity  (Neil Conway <neilc@samurai.com>)
Responses Re: string || NULL ambiguity
Re: string || NULL ambiguity
List pgsql-hackers
> On Wed, 2003-03-19 at 20:32, Oleg Bartunov wrote:
>> On Wed, 19 Mar 2003, Alvaro Herrera wrote:
>> > stringA||COALESCE(NULL, '')
>> >
>>
>> we don't know in advance if it's NULL or not.
>
> Right, that's the point of COALESCE: the first non-NULL argument is
> returned -- so if the first argument to COALESCE happens to be non-NULL,
> COALESCE has no effect.

I tried this with a txtidx column type:

tsearch=# select coalesce(NULL,'');case
------

(1 row)

tsearch=# select coalesce(NULL,'hi');case
------hi
(1 row)

tsearch=# select title_fts from article;           title_fts
----------------------------------'2':3A 'tsearch':1A 'version':2A'easi':1A 'implement':2A

(3 rows)

tsearch=# select coalesce('',title_fts) from article;
ERROR:  Void value
tsearch=# select coalesce('hi',title_fts) from article;case
------'hi''hi''hi'
(3 rows)

---

Note the error: "ERROR:  Void value" above.  Why is that happening?

--
Thomas




pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Nested transactions: low level stuff
Next
From: "Thomas T. Thai"
Date:
Subject: Re: string || NULL ambiguity