Re: BUG #6626: union all with values of type "unknown"
От | Pavel Stehule |
---|---|
Тема | Re: BUG #6626: union all with values of type "unknown" |
Дата | |
Msg-id | CAFj8pRAYTgsN9pEA+a=8Pgny6rsi=QhN01GpyW-jA49oV1r_fw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: BUG #6626: union all with values of type "unknown" (Robert Haas <robertmhaas@gmail.com>) |
Список | pgsql-bugs |
2012/5/22 Robert Haas <robertmhaas@gmail.com>: > On Tue, May 22, 2012 at 3:55 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> Robert Haas <robertmhaas@gmail.com> writes: >>>> deik3qfhu265n6=3D> with hello as (select 'hello' as name) >>>> deik3qfhu265n6-> , bye as (select 'bye' as name) >>>> deik3qfhu265n6-> select * from hello UNION ALL select * from bye; >>>> ERROR: =C2=A0failed to find conversion function from unknown to text >> >>> I think it should return a column of type text, just as if you'd done t= his: >>> select v from (select 'hello' union all select 'bye') x(v); >> >> I don't think it's a great idea to make CTEs handle this differently >> from other places where the same issue arises (from memory, views and >> INSERT/SELECT have problems with unknown literals, and there are >> probably other places I'm forgetting). >> >> Should we institute a uniform policy of forcing unknown sub-select >> outputs to text type? =C2=A0This would almost certainly break a few peop= les' >> queries, but the reduction of surprise might be worth it for most. > > I think if we can't do real type inference, forcing unknown to text is > probably the least of evils. can we implement late cast? Cast unknown to text only when exception is raised, resp. before? This issue is relative unfriendly for beginners Regards Pavel > > -- > Robert Haas > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > > -- > Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-bugs
В списке pgsql-bugs по дате отправления: