Nit*_*ain -11 sql sql-server outer-join lateral-join
在SQL Server中,OUTER APPLY和OUTER JOIN有什么区别?何时以及如何使用每种?
我本着欢迎网站新用户的精神回答这个问题.
OUTER APPLY可以实现任何LEFT JOIN可以做的事情 - 以及更多.
JOIN是关系数据库中的原始操作.它是如何教授SQL并帮助学习集合方面的思考 - JOIN通常与两组笛卡尔积的某些子集相关.
APPLY实现技术上称为"横向连接"的东西.我将这些视为相关子查询的变体.实质上,这些是相关的子查询,可以返回多个列和多个行.
我对关系数据库的理解是坚定的基础JOIN.在教SQL时,我就是这样解释表之间的关系.
也许有一天APPLY(或者LATERAL在其他数据库中使用它)将是教授SQL的默认方法.但是,我不认为这APPLY有助于人们理解基于集合的思维,所以我更喜欢先学习和使用JOIN,然后APPLY在许多其他有用的情况下使用.
| 归档时间: |
|
| 查看次数: |
113 次 |
| 最近记录: |