我是一个完全的新手,通过在工作中编写和修改一些查询和报告来自学 SQL。我已经掌握了各种类型的 JOIN,并且我已经多次使用 INNER JOIN 并取得了不错的成功。
我坚持的应该是一个简单的任务,但我的 Google-Fu 一定很弱。这就是我想要做的。
假设我有 3 个表,Table_A、Table_B 和 Table_C,每个表都有一个名为 [Serial_Number] 的列。
如果 A.Serial_Number = B.Serial_Number OR C.Serial_Number,我要选择的是其他 3 列。
我试过做:
SELECT
*
FROM
Table_A AS A
INNER JOIN Table_B AS B ON A.Serial_Number = B.Serial_Number
INNER JOIN Table_C AS C ON A.Serial_Number = C.Serial_Number
但这总是产生 0 结果,因为数据的性质表明如果 A 匹配 B,它将永远不会匹配 C,反之亦然。我还尝试了 LEFT OUTER JOIN 作为第二个子句,但这仅包括 Table_C 中已经在 Table_B 上匹配的 NULL。
我所做的与多个表上的 JOIN 相关的所有搜索似乎都是关于使用 JOINS 进一步排除记录,而我实际上想要包含更多记录。
就像我说的,我确信这真的很简单,只需要朝着正确的方向轻推。
谢谢!