You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle SQL如何对大小写敏感列计算分组平均值

错误原因

你的语句核心问题是GROUP BY使用了未做大小写统一的原始BRAND字段,和SELECT中返回的小写处理后的品牌字段不匹配。比如原始数据中同时存在Apple、apple两种写法的相同品牌,会被判定为两个独立分组,无法合并计算平均价格。

修正后的语句

CREATE VIEW AVERAGE_PRICE  AS 
SELECT LOWER(BRAND) as BRAND, AVG(PRICE) as AVERAGE_PRICE
FROM VENDOR
GROUP BY LOWER(BRAND);

补充说明

  • 部分数据库支持在GROUP BY中直接使用SELECT定义的别名,你也可以写成GROUP BY BRAND,但直接写LOWER(BRAND)兼容性更强,所有支持SQL标准的数据库都可以正常执行
  • 建议将平均价格的列名从PRICE改为AVERAGE_PRICE,避免语义混淆

内容的提问来源于stack exchange,提问作者Tana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 00:15:04