group by语句不能执行

耿两块 2016-01-19 09:59:35
有以下sql,执行时报00979错误,不是group by表达式:
select zgs,(select mc from ve_comp where bh = b.zgs) zgsmc,aa from (
select f_lql_getcompsupper(dp_compid) zgs,count(1) aa from ticket_all a
where dp_datetime_date >= to_date('2015-12-21','yyyy-mm-dd') and dp_datetime_date <= to_date('2015-12-31','yyyy-mm-dd') and zkfx = '1'
group by f_lql_getcompsupper(dp_compid)
) b;

group by出现在内层查询sql里,但是内层查询sql可以正常执行:
select f_lql_getcompsupper(dp_compid) zgs,count(1) aa from ticket_all a
where dp_datetime_date >= to_date('2015-12-21','yyyy-mm-dd') and dp_datetime_date <= to_date('2015-12-31','yyyy-mm-dd') and zkfx = '1'
group by f_lql_getcompsupper(dp_compid);

分完组之后,在外层套了一层,结果就报错了。这个让我不能理解。

找了几个客户,有的的可以执行,有的也报同样的错。发现一个共同点,可以执行的客户,oracle是10.2.0.1.0版的,报错的客户是10.2.0.4.0版的。
也许是这个版本里有bug。
做个记录,有时间了再找找具体的原因
...全文
201 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧