0

我有一个有点复杂的 oracle 视图,我用它来生成实时报告。由于派生表的所有行都被拉出,因此无论是索引还是分区,都几乎没有改进的余地。

我想知道我是否可以使用流水线表函数来提高报告的性能。

我想到了这一点,因为我不确定 SQL 究竟是如何工作的。查询是否等待直到从表中提取所有行,或者它像流水线表函数一样工作,一旦从基础表中提取一行,它就会被处理。

4

1 回答 1

3

SQL 查询会在行可用时立即返回。根据优化器查询计划,这可能是“立即”,或者在收集和排序记录等时可能存在显着延迟。

使用流水线函数不能提高这种性能,因为流水线函数必须首先从查询中获取一些数据,然后开始将其输出。它不会比您更快地从查询中获取数据。

于 2020-04-28T09:01:02.563 回答