Re: COALESCE requires NULL from scalar subquery has a type - Mailing list pgsql-general

From David G. Johnston
Subject Re: COALESCE requires NULL from scalar subquery has a type
Date
Msg-id CAKFQuwYS+pt_zATmxDVbizBj+D6VsaFHsmWUFYb3g1s8M-1waA@mail.gmail.com
Whole thread Raw
In response to Re: COALESCE requires NULL from scalar subquery has a type  (Geoff Winkless <pgsqladmin@geoff.dj>)
Responses Re: COALESCE requires NULL from scalar subquery has a type
List pgsql-general
On Tue, Feb 9, 2016 at 7:56 AM, Geoff Winkless <pgsqladmin@geoff.dj> wrote:
On 9 February 2016 at 14:53, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> SELECT COALESCE((SELECT 'Yes' FROM gwtest WHERE id=4), 'No') AS valid;
>
> There's no null visible anywhere in that.  I suppose that if there's
> no row with id=4, there would be a null at runtime,

Well yes, that was the whole point.

> but that's not
> going to make any difference for parse-time determination of what
> type the COALESCE() will return.

But when the gwtest subquery _does_ return a value it works, so the
problem can't be parse-time determination, can it?


SELECT COALESCE((SELECT 'Yes' FROM (VALUES (1),(2),(3)) tst (id) WHERE id=2), 'No') AS valid;

​Same error...I tested using the table as well...also the same error for values of id between 1 and 3.

​9.5.0

David J.

pgsql-general by date:

Previous
From: Geoff Winkless
Date:
Subject: Re: COALESCE requires NULL from scalar subquery has a type
Next
From: Geoff Winkless
Date:
Subject: Re: COALESCE requires NULL from scalar subquery has a type