我有两个表,我无法执行完全外连接,因此我正在进行左右外连接的并集。 每个表都有像
这样的属性 tableA - one,two,three,four
tableB - one,two,three,four
(SELECT * FROM tableA
LEFT OUTER JOIN tableB ON
tableA.two=tableB.two)
UNION
(SELECT * FROM tableA
RIGHT OUTER JOIN tableB ON
tableA.two=tableB.two)
答案 0 :(得分:1)
您只需要对表格进行别名
SELECT a1.one, a1.two, b1.one, b1.two
FROM tableA a1
LEFT OUTER JOIN tableB b1
ON a1.two=b1.two
UNION
SELECT a2.one, a2.two, b2.one, b2.two
FROM tableA a2
RIGHT OUTER JOIN tableB b2
ON a2.two=b2.two;
顺便说一下,on this page描述的UNION ALL
和排除JOIN
“方法是在MySQL中实现FULL OUTER JOIN
的更可靠的方法。