select ctno, blockcode ,avg(num*price) from 表 group by ctno, blockcode
1. select ctno,blockcode,num,price,b.avgprice from tablename a,(select sum(num*price*1.00)/(case sum(num) when 0 then 1 else sum(num) end) as avgprice from tablename group by ctno,blockcode) b where a.ctno=b.ctno and a.blockcode=b.blockcode 2. select ctno,blockcode,sum(num*price*1.00)/(case sum(num) when 0 then 1 else sum(num) end) as avgprice from tablename group by ctno,blockcode
哎呀,错啦。 select ctno, blockcode ,sum(num*price) /sum(num) from 表 group by ctno, blockcode
from 表
group by ctno, blockcode
select ctno,blockcode,num,price,b.avgprice
from tablename a,(select sum(num*price*1.00)/(case sum(num) when 0 then 1 else sum(num) end) as avgprice from tablename group by ctno,blockcode) b
where a.ctno=b.ctno and a.blockcode=b.blockcode
2.
select ctno,blockcode,sum(num*price*1.00)/(case sum(num) when 0 then 1 else sum(num) end) as avgprice
from tablename
group by ctno,blockcode
select ctno, blockcode ,sum(num*price) /sum(num)
from 表
group by ctno, blockcode