sql 提示列名无效

select sum(fqty) as 数量,sum(famount) as 金额,金额/数量 as 平均价 from table
结果报错:列名“数量”,“金额”无效 这个怎么改呀?
.

select sum(fqty) as 数量,sum(famount) as 金额,sum(famount)/sum(fqty) as 平均价 from table追问

我这样试过,但是如果数据库中的品名有多个的话,这个平均价是所有商品的平均价,不是按商品来算来的(前提是在后面我已经order by 品名了)
但是如果只是前面两列的话,它又是正确的按商品来汇总的数量和金额!

追答

select 品名,sum(fqty) as 数量,sum(famount) as 金额,sum(famount)/sum(fqty) as 平均价 from table group by 品名

追问

按照您上面这样显示的结果是所有商品的品均价了,好纠结啊!

追答

我加了按照品名分组了,你好好看看

追问

我知道,我的句子里面也是按商品来分组的,而且数据库里是有单价这一列的,如果avg(单价)那么出来的平均价是所有商品的,但是sum(金额)却是按商品来汇总的金额,这是什么情况?

追答

平均价就应该按照总金额除以总数量来算

追问

avg(单价)和sum(金额)/sum(数量)出来的都是所有商品的汇总平均价,我现在是要每个商品有单独的平均价

追答

select 品名,sum(fqty) as 数量,sum(famount) as 金额,sum(famount)/sum(fqty) as 平均价 from table group by 品名

用这个语句

追问

您觉得这个平均单价是对的吗?

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网