Re: BUG #5028: CASE returns ELSE value always when type is"char" - Mailing list pgsql-bugs

From Robert Haas
Subject Re: BUG #5028: CASE returns ELSE value always when type is"char"
Date
Msg-id 603c8f070909021821u5c704c3fu4b5c8a37d596da@mail.gmail.com
Whole thread Raw
In response to Re: BUG #5028: CASE returns ELSE value always when type is"char"  (Sam Mason <sam@samason.me.uk>)
List pgsql-bugs
On Wed, Sep 2, 2009 at 3:34 PM, Sam Mason<sam@samason.me.uk> wrote:
> On Wed, Sep 02, 2009 at 12:54:03PM -0500, Kevin Grittner wrote:
>> Sam Mason <sam@samason.me.uk> wrote:
>> > If we did follow Kevin's request directly, should we also be
>> > specifying the type of NULL?
>>
>> I don't *think* the SQL standard requires that, and barring that I
>> don't see any compelling reason to type NULL.
>
> I've just realized that either I'm missing your point entirely (it's
> happened before :) or this ignores the point entirely. =A0PG wants to
> assign types to every expression, whether this expression will evaluate
> to a NULL value at run-time or not is immaterial in this regard. =A0I
> think SQL wants to do the same, but I don't have as much conviction as
> Tom here. =A0Once we're ascribing types to expressions then whether it
> happens to contain the literal "1", "'txt'" or "NULL" we're committed to
> giving it some type---the only question is which one. =A0We thus need to
> type expressions consisting of just NULL constants.
>
> A fun puzzle to base any inductive solution on is what type to ascribe
> to the following:
>
> =A0CREATE VIEW v (c) AS
> =A0 =A0SELECT NULL;

'a of course.

...Robert

pgsql-bugs by date:

Previous
From: "Kevin Grittner"
Date:
Subject: Re: BUG #5028: CASE returns ELSE value always when type is"char"
Next
From: "Mark Douglas"
Date:
Subject: BUG #5031: DATE_TRUNC returns the wrong value when specifying MONTH