SQL Join从左表和右表返回空行
可能重复:SQL Join从左表和右表返回空行,sql,mysql,join,Sql,Mysql,Join,可能重复: 真正简单的问题,却完全把自己搞糊涂了 假设我有以下表格: tbl1 id-计数1 a-7 b-4 d-2 tbl2 id-计数2 a-3 c-4 我想创建一个表,给出以下结果: tbl_温度 id-count1-count2 a-7-3 b-4-null c-null-4 d-2-null 我需要使用什么类型的联接 干杯 Ben理想情况下,您可能希望使用完整的外部联接,但事实并非如此。相反,您可以使用左侧和右侧外部联接(或另一个表反转的左侧联接)来模拟它,并合并所有结果 SELEC
真正简单的问题,却完全把自己搞糊涂了 假设我有以下表格: tbl1 id-计数1
a-7
b-4
d-2 tbl2 id-计数2
a-3
c-4 我想创建一个表,给出以下结果: tbl_温度 id-count1-count2
a-7-3
b-4-null
c-null-4
d-2-null 我需要使用什么类型的联接 干杯
Ben理想情况下,您可能希望使用完整的外部联接,但事实并非如此。相反,您可以使用左侧和右侧外部联接(或另一个表反转的左侧联接)来模拟它,并合并所有结果
SELECT
tbl1.id,
tbl1.count1,
tbl2.count2
FROM tbl1
LEFT JOIN tbl2
ON tbl1.id = tbl2.id
UNION ALL
SELECT
tbl2.id,
tbl1.count1,
tbl2.count2
FROM tbl2
LEFT JOIN tbl1
ON tbl1.id = tbl2.id
WHERE tbl1.id IS NULL
ORDER BY id
结果:
id count1 count2
a 7 3
b 4 NULL
c NULL 4
d 2 NULL
id count1 count2
a 7 3
b 4空
c空4
d 2空
在这里寻找不同的解决方案。