Re: UNION problem - Mailing list pgsql-general

From Richard Huxton
Subject Re: UNION problem
Date
Msg-id 200302040956.55607.dev@archonet.com
Whole thread Raw
In response to UNION problem  (Jean-Christian Imbeault <jc@mega-bucks.co.jp>)
Responses Re: UNION problem
List pgsql-general
On Tuesday 04 Feb 2003 6:08 am, Jean-Christian Imbeault wrote:
> I have the following two separate QL queires which work fine alone. But
> if I tried and UNION them I get an error which doesn't seem to make
> sense, "Attribute not found ...". Can someone spot and point out out my
> mistake/error?

> TAL=# SELECT prod_id FROM invoice_li, products, movies WHERE
> prod_id=products.id AND movies.id=products.id AND received AND ship_now
> AND not cancelled AND invoice_id not in (select id from invoices where
> cancelled) UNION SELECT prod_id FROM invoice_li, products, movies WHERE
> invoice_id not in (select invoice_id from invoice_li where cancelled OR
> not received OR shipped) AND  prod_id=products.id AND
> movies.id=products.id AND received AND ship_now AND not cancelled GROUP
> BY prod_id, prod_type_id, maker_id, maker_prod_code, label_id ORDER BY
> prod_type_id, maker_id, maker_prod_code, label_id
> TAL-# ;
> ERROR:  Attribute "prod_type_id" not found

Since the two queries work separately, I'd guess PG is trying to locate
prod_type_id via a different route when unioned. What happens if you qualify
all the column-names?

Something like:
select min(f.a) from foo f group by f.b UNION select min(f2.a) FROM foo f2
group by f2.b;


--
  Richard Huxton

pgsql-general by date:

Previous
From: "Nigel J. Andrews"
Date:
Subject: Re: [PHP] 7.3.1 BREAKS COMPATIBILITY with the latest PHP4
Next
From: "Peter Haworth"
Date:
Subject: Re: DBI driver and transactions