忽略版本,格式化 SQL 代码的最佳实践是什么?
我更喜欢这种方式(方法A):
select col from a inner join b on a.id = b.id inner join c on b.id = c.id
一位同事更喜欢另一种方法(方法 B):
select col from a inner join (b inner join c on b.id=c.id) on a.id = b.id
我想知道是否有任何区别 - 查询优化器似乎为两者生成相同的执行计划。那么也许这只是为了可读性?
第一次看到用方法B写的SQL,还有人这样写SQL吗?我个人觉得方法B很难读懂。
编辑:请注意,代码位于一行且大写,以使两者在本问题中更具可比性。
最佳答案
我认为 A 更具可读性,并且大多数示例代码都使用这种风格。两者解析相同并产生相同的查询计划,因此就 SQL Server 而言,没有区别。
我通常也会大写关键字并缩进以提高可读性:
SELECT col
FROM a
INNER JOIN b
ON a.id = b.id
INNER JOIN c
ON b.id = c.id
关于sql - 样式/格式对 SQL 的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3342504/