|
|
1
48
在性能上没有区别。 然而,第一种款式是ANSI-89,在一些商店会把你的腿弄断。包括我的。第二种样式是ANSI-92,并且更加清晰。 示例: 哪一个是连接,哪一个是过滤器?
如果你有外部连接(
ANSI-92的风格也很难博利克斯。如果你错过了一个条件,你可以很容易地用笛卡尔积(交叉连接)结束旧的风格。使用ANSI-92会出现语法错误。 编辑:再澄清一下
不仅仅是 语法 :这是关于 语义正确 查询 编辑,2011年12月 SQL Server logical query processing order 来自,在,加入,在哪里。。。 因此,如果混合使用“隐式WHERE inner joins”和“explicit FROM outer joins”,则很可能不会得到预期的结果,因为查询是不明确的。。。 |
|
|
2
4
区别在于可读性和可维护性。
我不会明确地说,因为我还没有进入上一个查询优化器的范围,但我很有信心,您看到的是性能上的微小差异,如果有的话。 |
|
|
3
2
我鄙视你用
喜欢使用
最后,你(开发人员)可能不在未来,因此可读性和可维护性将帮助倾注灵魂谁必须接管你的代码:)。
当我看到开发人员使用
|
|
|
4
0
|
|
|
5
0
这是这个问题的副本: Explicit vs implicit SQL joins . 一般来说,我认为隐式(where version)是不好的形式,不像显式(on version)那么清楚。我也认为隐含的是被贬值,但不是100%的。不过,这两个项目的执行计划都是一样的。 |