Oracle 中 SQL Server APPLY 的等效项是什么?
我是甲骨文新手。是否有一个内置关键字可以完成与 SQL Server APPLY 相同的工作?
I am new to Oracle. Is there a builtin keyword does the same job of SQL Server APPLY?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我认为相当于 Oracle 中的 APPLY 子句称为横向 JOIN。 Oracle 中的横向联接是指将表 A 与输出行的函数 F 联接起来,并且该函数将 A 的列作为参数。
让我们用这个设置构建一个小例子:
横向连接在 Oracle 中是自动的,没有特殊的关键字:
I think the equivalent of the APPLY clause in Oracle is called a lateral JOIN. A lateral join in Oracle is when you join a table A with a function F that outputs rows and this function has columns of A as parameters.
Let's build a small example with this setup:
A lateral join is automatic in Oracle, there is no special keyword:
在 Oracle 中,我们可以通过使用
TABLE()
函数在FROM
子句中使用管道函数。这可以像任何其他表一样对待,例如,通过加入它:
In Oracle we can use a pipelined function in the
FROM
clause by using theTABLE()
function.This can be treated like any other table, for instance, by joining to it:
从 12c 开始,Oracle 原生支持
APPLY
和LATERAL
:https://docs.oracle.com/database/121/NEWFT/chapter12101.htm#FEATURENO10330Since 12c, Oracle supports both
APPLY
andLATERAL
natively: https://docs.oracle.com/database/121/NEWFT/chapter12101.htm#FEATURENO10330