我遇到了非常奇怪的情况(我认为),在该情况下,我无法在视图上使用group by子句执行查询,并且它停留在等待事件PGA内存操作上,而不执行任何操作。它甚至没有创建执行计划。
这是一个非常简单的查询,我只需
select a.col1, sum(a.col2)
from my_view a
group by a.col1;
但是执行
select a.col1, a.col2
from my_view a;
和
select sum(a.col2)
from my_view a;
可以正常工作。该视图的行数少于400,但列数约为700,由25个表的内部联接组成。查询该视图确实非常快,因为所有这些表都非常小,只有很多列。
使用group by子句查询其他任何普通表并进行求和也没有问题。
有什么想法会导致这种行为吗?
非常感谢您。