Laurel_911 2023-07-27 15:57 采纳率: 33.3%
浏览 13

mysql 每个类别的销售均值,单品销售额小于每个类别销售均值的商品数量

SELECT `2级类别名称`,AVG(`单笔销售额`) AS `平均销售额`,count(`数量`)
FROM `表格202306`
GROUP BY `2级类别名称`
HAVING `单笔销售额` < `平均销售额`;

不知道错在了哪里,我是想求每个2级类别名称,和对应2级类别名称的平均销售额,以及低于平均销售额的商品数量。
但是程序报错,“1054-Unknown column '单笔销售额' in 'having clause'

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-07-27 18:53
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 以下回答由chatgpt基于相关博客总结生成:

      问题出在HAVING子句中使用了别名单笔销售额,而在HAVING子句中无法使用别名进行筛选。解决这个问题有两种方式:

      1. 使用子查询来解决:
      SELECT `2级类别名称`, AVG(`单笔销售额`) AS `平均销售额`, COUNT(`数量`)
      FROM (
          SELECT `2级类别名称`, `单笔销售额`, `数量`
          FROM `表格202306`
      ) AS subquery
      GROUP BY `2级类别名称`
      HAVING `单笔销售额` < AVG(`单笔销售额`);
      
      1. 使用WITH语句来解决:
      WITH subquery AS (
          SELECT `2级类别名称`, `单笔销售额`, `数量`
          FROM `表格202306`
      )
      SELECT `2级类别名称`, AVG(`单笔销售额`) AS `平均销售额`, COUNT(`数量`)
      FROM subquery
      GROUP BY `2级类别名称`
      HAVING `单笔销售额` < AVG(`单笔销售额`);
      

      这样就可以正确地筛选出单品销售额小于每个类别销售均值的商品数量了。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 7月27日

悬赏问题

  • ¥20 如何推断此服务器配置
  • ¥15 关于github的项目怎么在pycharm上面运行
  • ¥15 内存地址视频流转RTMP
  • ¥100 有偿,谁有移远的EC200S固件和最新的Qflsh工具。
  • ¥15 找一个QT页面+目标识别(行人检测)的开源项目
  • ¥15 有没有整苹果智能分拣线上图像数据
  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析
  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败