Re: BUG #5028: CASE returns ELSE value always when type is"char"
От | Robert Haas |
---|---|
Тема | Re: BUG #5028: CASE returns ELSE value always when type is"char" |
Дата | |
Msg-id | 603c8f070909021821u5c704c3fu4b5c8a37d596da@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: BUG #5028: CASE returns ELSE value always when type is"char" (Sam Mason <sam@samason.me.uk>) |
Список | 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 по дате отправления: