Aggregates and joined tables...
Hi all,
I have a problem using aggregate function SUM() ...
The platform is PostgreSQL 6.5.2 on i386-unknown-freebsd3.2, compiled by gcc
2.7.2.1 .
The story is that I need to join two tables with an aggregate function.
Here is a sample model :
Table A consist of ( fa1 , fa2 )
Table B consist of ( fb1 , fb2 )
Table C consist of ( fc1 , fc2 ,fc3 )
I want to write a query which looks like this :
select fa1 - sum(fc3)
from A,B,C
where fa1=fb1 and fb2=fc2
group by fa1 ;
unfortunately I get this in result:
ERROR: Illegal use of aggregates or non-group column in target list
Any idea ?
How can I have my result with only one SQL statement ?
Thanks in advance
Omid Omoomi
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
"omid omoomi" <oomoomi@hotmail.com> writes:
The platform is PostgreSQL 6.5.2 on i386-unknown-freebsd3.2, compiled by gcc
2.7.2.1 .
I want to write a query which looks like this :
select fa1 - sum(fc3)
from A,B,C
where fa1=fb1 and fb2=fc2
group by fa1 ;
unfortunately I get this in result:
ERROR: Illegal use of aggregates or non-group column in target list
Works fine in current sources. Try upgrading to something newer than
6.5.2 ...
regards, tom lane
Hello,
I have upgraded my DB to 7.0.3, but there is still the problem. I think that
it may be a bug.
Joining 3 tables was not possible...
It says "fa1 should be in aggregate too" !
While joining 2 tables gives wrong results ...
ie, if the results should be like this:
fa1 sum
----- -------
ali 100
omid 200
shaya 50
then I get this:
fa1 sum
----- -------
ali 350
omid 350
shaya 350
Any more idea ?
Omid Omoomi
The platform is PostgreSQL 6.5.2 on i386-unknown-freebsd3.2, compiled by
gcc 2.7.2.1 .
The story is that I need to join two tables with an aggregate function.
Here is a sample model :
Table A consist of ( fa1 , fa2 )
Table B consist of ( fb1 , fb2 )
Table C consist of ( fc1 , fc2 ,fc3 )
I want to write a query which looks like this :
select fa1 - sum(fc3)
from A,B,C
where fa1=fb1 and fb2=fc2
group by fa1 ;
unfortunately I get this in result:
ERROR: Illegal use of aggregates or non-group column in target list
Works fine in current sources. Try upgrading to something newer than
6.5.2 ...
_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
Import Notes
Resolved by subject fallback