ZBLOG

SELECT t.FINAL_CHECK_LEVEL, COUNT(*) AS level_count, (COUNT(*) / total.total_count) * 100 AS percentage, t.FINAL_CHECK_LINE, case when uu.original_order is not null or uu.original_order != '' then uu.original_order else u.work_ord...

在您的查询中,出现了 ORA-00979 错误,指示某些列不是 GROUP BY 表达式。错误发生在以下部分:

t.FINAL_CHECK_LINE,
case when uu.original_order is not null or uu.original_order != '' then uu.original_order else u.work_order_name end,
uu.serialnumber

根据 Oracle 数据库的规定,SELECT 列表中未被 GROUP BY 的列必须使用聚合函数进行处理或包含在 GROUP BY 子句中。

要解决这个问题,您可以将这些列添加到 GROUP BY 子句中或使用适当的聚合函数对它们进行处理。例如,如果您只需要这些列的唯一值,则可以使用 MAX() 函数对它们进行聚合:

MAX(t.FINAL_CHECK_LINE) AS FINAL_CHECK_LINE,
MAX(CASE WHEN uu.original_order IS NOT NULL OR uu.original_order != '' THEN uu.original_order ELSE u.work_order_name END) AS column_alias,
MAX(uu.serialnumber) AS serialnumber

请根据您的需求选择适当的聚合函数,并相应地调整查询语句。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=12144

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?