Thread: Problems with complex queries ...
Hey everybody !!! I am new on this list !!! I have a little problem ..... I try this on my system: (Postgres 6.5.2, Linux) "select n_lote from pedidos except select rp.n_lote from relpedidos rp, relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote having sum(rp.cantidad)=sum(rf.cantidad)" and I get this result: ERROR: rewrite: comparision of 2 aggregate columns not supported but if I try this one: "select rp.n_lote from relpedidos rp, relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote having sum(rp.cantidad)=sum(rf.cantidad)" It's OK !! What's up??? Do you think i found a bug ??? Do exists some limitation like this in subqueries?? (Perhaps Postgres don't accept using aggregates in subqueries ???) I tried this too: "select n_lote from pedidos where n_lote not in (select rp.n_lote from relpedidos rp, relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote having sum(rp.cantidad)=sum(rf.cantidad))" but the result was the same ! And i get the same error message (or similar) when i try other variations. Thanks !!! Fer -- ************* ****** ****** ********** ***** ***** ******************** ***** ****** ********** ****** ***** *********** ***** ******** **** ************* **** **** ***** **** **** ***** ******* **** **** ***** ******* **** ***** ****** **** ********* ****** ***** ********* ***** ***** ************ ***** ****** ****** ********* ***** ***** ******** (*) SymeX ==> http://www.lantik.com(*) Web en http://www.arrakis.es/~txino (*) Informate sobre LINUX en http://www.linux.org
"J. Fernando Moyano" <txinete@wanadoo.es> writes: > I try this on my system: (Postgres 6.5.2, Linux) > "select n_lote from pedidos except select rp.n_lote from relpedidos rp, > relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote having > sum(rp.cantidad)=sum(rf.cantidad)" > and I get this result: > ERROR: rewrite: comparision of 2 aggregate columns not supported I think this is fixed in 7.0. regards, tom lane
Without seeing the schema or anything, a similar query to your first one appears to run on my Postgres 7.0.2 setup. It's probably worth upgrading. On Wed, 30 Aug 2000, J. Fernando Moyano wrote: > I try this on my system: (Postgres 6.5.2, Linux) > > "select n_lote from pedidos except select rp.n_lote from relpedidos rp, > relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote having > sum(rp.cantidad)=sum(rf.cantidad)" > > and I get this result: > > ERROR: rewrite: comparision of 2 aggregate > columns not supported > > but if I try this one: > > "select rp.n_lote from relpedidos rp, relfacturas rf where > rp.n_lote=rf.n_lote group by rp.n_lote having sum(rp.cantidad)=sum(rf.cantidad)" > > It's OK !! > > What's up??? > Do you think i found a bug ??? > Do exists some limitation like this in subqueries?? > > (Perhaps Postgres don't accept using aggregates in subqueries ???) > > I tried this too: > > "select n_lote from pedidos where n_lote not in (select rp.n_lote from > relpedidos rp, relfacturas rf where rp.n_lote=rf.n_lote group by rp.n_lote > having sum(rp.cantidad)=sum(rf.cantidad))" > > but the result was the same ! > > And i get the same error message (or similar) when i try other variations.