sql - 级联左外连接

标签 sql

执行具有以下要求的外连接的正确语法是什么:

A.c1 = B.c1 上的左外连接 B
B 在 B.c2 = C.c2 上的左外连接 C
A.c1 = D.c1 上的左外连接 D

所以 A、B 和 C 级联以及 A 和 D 级联。

我知道如何写 A->B->C 但我不知道如何添加 D。我需要范围或括号或其他东西。

最佳答案

这应该可以正常工作:

SELECT
    *
    FROM A 
    left outer join B on A.c1 = B.c1
    left outer join C on B.c2 = C.c2
    left outer join D on A.c1 = D.c1

数据库引擎查看您要加入的内容,而不是连接的顺序。 D 连接到 A,与 B 或 C 无关

关于sql - 级联左外连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2291803/

相关文章:

java - Android SQL查询问题

php - 更新数据库行

mysql - SQL 将第二个表中的行数添加到主查询

sql - 为给定月份生成一系列周间隔

mysql - 未知的复合列名称

mysql - 需要更漂亮的sql查询建议

sql - 将 ActiveRecord 查询重写为递归 SQL

mysql - 通过在sql中对多个列进行分组来查找列中的最小值

php - 这种方法会保护我的数据库不被修改吗?

SQL生成一组日期