2018-04-19 5:01 GMT+02:00 Kyotaro HORIGUCHI <horiguchi.kyot...@lab.ntt.co.jp
>:

> At Mon, 16 Apr 2018 18:39:24 +0530, Ashutosh Bapat <
> ashutosh.ba...@enterprisedb.com> wrote in <CAFjFpRf6Q0B9m2qqsQjw9vTyh8r2S=
> fg2sub360mg3cbxq1...@mail.gmail.com>
> > On Mon, Apr 16, 2018 at 4:10 PM, Martin Swiech <martin.swi...@gmail.com>
> wrote:
> > > Hi folks,
> > >
> > > I got some complex query which works on PostgreSQL 9.6 , but fails on
> > > PostgreSQL 10.
> > >
> > > Version of PostgreSQL:
> > > PostgreSQL 10.3 on x86_64-apple-darwin14.5.0, compiled by Apple LLVM
> version
> > > 7.0.0 (clang-700.1.76), 64-bit
> > >
> > > Simplified core of the problematic query looks like this:
> > > ```
> > > select * from (
> > >    select 1::integer as a
> > > ) t1
> > > union all
> > > select * from (
> > >    select null as a
> > > ) t2;
> > > ```
> > >
> > > It fails with this error message:
> > > ```
> > > ERROR:  UNION types integer and text cannot be matched
> > > LINE 5: select * from (
> > >                ^
> > > SQL state: 42804
> > > Character: 66
> > > ```
> > >
> >
> > The error disappears if we go one commit before
> > 1e7c4bb0049732ece651d993d03bb6772e5d281a, the error disappears. But
> > that's I think expected with that commit.
> >
> > We can work around this problem by casting null to integer like
> null::integer.
>
> I think the wanted behavior is not resolving unknown for all FROM
> clauses under union.
>
>
+1

Pavel


> regards.
>
> --
> Kyotaro Horiguchi
> NTT Open Source Software Center
>

Reply via email to