多表查询全解析:语法、优化与实践
1. 多表查询语法对比
在多表查询中,不同的语法会带来不同的使用体验和风险。
1.1 SQL-92 语法
INNER JOIN T3
ON T3.col2 = T2.col2
INNER JOIN T4
ON T4.col3 = T3.col3
这种语法下,遗漏连接谓词的可能性较低。因为 ON 子句在内部(和外部)连接中是必需的,如果遗漏,解析器会生成错误。
1.2 SQL-89 语法
FROM T1, T2, T3, T4
WHERE T2.col1 = T1.col1 AND T3.col2 = T2.col2 AND T4.col3 = T3.col3
此语法中,在 FROM 子句里用逗号分隔所有表名,在 WHERE 子句中用逻辑与连接所有谓词。显然,误漏谓词的可能性更高,一旦遗漏,可能会导致意外的交叉连接。
1.3 关键字使用说明
对于 INNER JOIN 和 JOIN ,它们没有区别,标准 SQL 默认使用内部连接,因为它是最常用的连接类型。同样,在外部连接中, OUTER 关键字是可选的,例如 LEFT OUTER JOIN 和
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



