如何从左连接和右连接的并集中选择所需的属性

时间:2011-04-26 11:48:45

标签: mysql join

我有两个表,我无法执行完全外连接,因此我正在进行左右外连接的并集。 每个表都有像

这样的属性

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)

1 个答案:

答案 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的更可靠的方法。