Oracle ORA-00979:不是表达式的组

Oracle ORA-00979:不是表达式的组,oracle,Oracle,我们系统的后台计划任务最近刚刚给出了上述错误。它已经使用多年了。唯一的区别是它已被移动到新服务器 我已经尝试了我能想到的一切,所以如果有人有任何想法,我将不胜感激 这是给出错误的简单查询 Select count(guid) from transearch_personnel where lower(guid)='fkonings001' and ((next_termination_date is null ) and (termination_date is nu

我们系统的后台计划任务最近刚刚给出了上述错误。它已经使用多年了。唯一的区别是它已被移动到新服务器

我已经尝试了我能想到的一切,所以如果有人有任何想法,我将不胜感激

这是给出错误的简单查询

Select count(guid) from transearch_personnel 
where lower(guid)='fkonings001'
      and ((next_termination_date is null )
      and (termination_date is  null )) group by 1

干杯

尝试按聚合列分组的原因是什么?这可能吗?我看不出这里使用GROUPBY子句的原因…GROUPBY1表示按常量数值1分组。我不知道为什么它以前有效,现在无效,但只要按1删除group,您将得到相同的结果,即满足where子句的总计数。这可能是一个不可靠的性能改进。新服务器是否具有与Oracle相同的版本?它以前给出了此错误。ORA-00937:不是单个组功能。奇怪的是,它只会在应用程序中出错,如果你在任何查询工具中运行,它会返回预期的结果。我只是在尝试其他东西,威尔会回来报告。transearch_人员是一张桌子还是一个视图?想知道冗余的GROUPBY是否被推到视图中,并混淆了解析器。如果它是一个视图,guid是一个固定值还是它本身是一个聚合?旧服务器和新服务器上的确切Oracle版本可能有助于尝试重新创建。