0

基本上我想显示我所有 5 个表中的所有行,除了一个。

下面是关系

  • A 连接到 B
  • B与C相连
  • C与D相连
  • B与E相连

我想根据我提到的关系从除 E 之外的所有表中获取行

所以我的方法是

    select some fields
    from 
    ( SELECT 5 AS dummy_id) AS dummy_table
    right outer join B on dummy_table.dummy_id=B.some_id
    right outer join A on A.some_id=B.some_id
    right outer join C on C.some_id=B.some_id
    inner join E on E.some_id=B.some_id
    right outer join D on C.some_id=D.some_id

我的猜测是因为当我们在表名之前指定右外连接时。

例如

right outer join D

这意味着我正在从该表中选择所有行。

但在这里我插入一个虚拟表来提取我的第一个表的所有行。

只是想确认我的方法是否正确,因为我想避免关键字完全外连接和联合,因为它已知的 mysql 不支持完全外连接

4

0 回答 0