使用group by子句的视图查询永远不会执行,并且会话会挂起

时间:2019-02-04 15:28:03

标签: view oracle12c

我遇到了非常奇怪的情况(我认为),在该情况下,我无法在视图上使用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子句查询其他任何普通表并进行求和也没有问题。

有什么想法会导致这种行为吗?

非常感谢您。

0 个答案:

没有答案