SQL 不能对包含聚合或子查询的表达式执行聚合函数

我在计算一个化妆水的消费周期使用如下代码:图片说明 我想要计算消费周期的平均值,所以就改写了上门那段代码,但是得出不能对包含聚合或子查询的表达式执行聚合函数的错误提示, 图片说明图片说明 麻烦指出我要怎么改才能算出平均值 图片说明

3个回答

你应该在你查询出来的数据外面再包一层select 来求平均值就OK了。
select avg(t.消费周期) from (这里是你计算每个用户的消费周期的sql) t

weixin_41993251
weixin_41993251 确实可以!! 想问一下,我发现同一客户在同一天可能会出现两次消费,但是我只需要将其计数为一就可以了,这个怎么操作。非常感谢你的帮助
2 年多之前 回复

min与max已经是聚集函数了,最外层套一个avg聚集函数就有问题了;你这个avg是要做所有客户卡号的平均值吗?

weixin_41993251
weixin_41993251 回复qq_27816887: 对的
2 年多之前 回复
qq_27816887
qq_27816887 回复weixin_41993251: 你查出的消费周期除以客户卡号的数量是平均值吗
2 年多之前 回复
wzp1996111510
wzp1996111510 666
2 年多之前 回复
weixin_41993251
weixin_41993251 是的,要算所有客户卡号的平均值
2 年多之前 回复

想问一下,我发现同一客户在同一天可能会出现两次消费,但是我只需要将其计数为一就可以了,这个怎么操作。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐