0

是否可以在不指定 TABLE( ) 运算符的情况下调用 Oracle 流水线函数,如下例所示?

SELECT * FROM MyFunction()

由于与 SqlServer 的兼容性,我不想使用以下内容。

SELECT * FROM TABLE( MyFunction() )

任何人都可以帮助我吗?

谢谢!

4

1 回答 1

0

首先,表函数在 Oracle 中不是一个好主意,因为它将所有数据加载到内存中,并且您的查询中将不再使用索引。

其次,表函数在 SQL Server 和 Oracle 中的工作方式完全不同,我最好的建议是使用dynamicSql,该函数将构建 sql 字符串并返回它,主程序将执行它,应该也可以在 oracle 和 sql server 中工作。

于 2015-06-25T17:33:28.890 回答