BUG #1677: Bug in select with Union - Mailing list pgsql-bugs

From Julien Vallet
Subject BUG #1677: Bug in select with Union
Date
Msg-id 20050523114912.B34B0F0B06@svr2.postgresql.org
Whole thread Raw
Responses Re: BUG #1677: Bug in select with Union
List pgsql-bugs
The following bug has been logged online:

Bug reference:      1677
Logged by:          Julien Vallet
Email address:      julien.vallet@density-tech.com
PostgreSQL version: 8.0 & 8.0.3
Operating system:   Windows XP
Description:        Bug in select with Union
Details:

I think there is a problem with the select statement with Union.

Firstable, I create 3 tables (tuserprofileopp, tprofileopp and
tgroupprofileopp).

CREATE TABLE tuserprofileopp
(
  internalkey int8 NOT NULL,
  CONSTRAINT tuserprofileopp_pkey PRIMARY KEY (internalkey)
);

CREATE TABLE tprofileopp
(
  internalkey int8 NOT NULL,
  CONSTRAINT tprofileopp_pkey PRIMARY KEY (internalkey)
);

CREATE TABLE tgroupprofileopp
(
  internalkey int8 NOT NULL,
  manager_id int8,
  CONSTRAINT tgroupprofileopp_pkey PRIMARY KEY (internalkey)
);

Then, I write this request:
select *
from
(
select
internalKey, null as manager_id, 0 as clazz_
from TProfileOPP
union select
internalKey, null as manager_id, 1 as clazz_
from TUserProfileOPP
union select
internalKey, manager_id, 2 as clazz_
from TGroupProfileOPP
)
this_;

The result is "ERROR:  UNION types text and bigint cannot be matched"

If I do
"select *
from
(
select
internalKey, null as manager_id, 0 as clazz_
from TProfileOPP
union select
internalKey, manager_id, 2 as clazz_
from TGroupProfileOPP
)
this_;", It works.

Thank you.

pgsql-bugs by date:

Previous
From: Andrew - Supernews
Date:
Subject: Re: initdb fails on ultra2 sparc64, freebsd 5.4
Next
From: Tom Lane
Date:
Subject: Re: BUG #1677: Bug in select with Union