【发布时间】:2018-09-13 00:41:06
【问题描述】:
我将两个不同的表加入到我的原始表中,但我只想在其中一个上进行内部连接(取决于它是否是包含匹配键的那个)。基本上,连接的两个表不可能与原始表具有相同的记录。我最多需要一个。
类似...
SELECT
t.Id,
t.column1,
t.column2,
a.column3 as ‘Column 3’,
b.column4 as ‘Column x’,
s.column5,
t.column6
FROM “Table1” t
INNER JOIN “Table2” a on a.Id = t.Id
INNER JOIN “Table3” b on b.Id = t.Id
如果 Id 存在于该特定表中,则应仅连接 2 或 3 中的一个。
【问题讨论】:
-
那么您的具体问题是什么?
-
您可以将它们合并到一个子查询中并选择它。但是......您可能会失去任何索引收益。你现在这样做的方式有什么问题。您可以在 SELECT 子句中使用
COALESCE()来组合a和b之间共有的字段。最终,我不确定您的问题/问题是什么。 -
如果添加样本数据和预期输出数据,会更容易回答
标签: sql inner-join