我在寻找一个查询来从两个不同的表中选择行,保持列名相同(我在这里找到一个结果用于从两个不同的表中进行选择,但它合并了列名以获得更简单的查询)。我需要保留原始列名,但在新的更大的表中存在两个不同的表。两个表格之间没有重叠列。如何在MySQL中选择两个不重叠的表格
的图画,想象:
所以,我怎么能做到这一点?我知道查询可能会相当令人费解,但任何半体面可能会比我目前的尝试更好:
SELECT t1.* , t2.*
FROM table1 t1 RIGHT OUTER JOIN table2 t2
ON r.someColumn1 = rc.someColumn2
UNION
SELECT t1.* , t2.*
FROM table1 t1 LEFT OUTER JOIN table2 t2
ON r.someColumn1 = rc.someColumn2
这并不工作,但只只要不存在的情况下someColumn1 = someColumn2 - 当然,这很容易发生。
任何帮助表示赞赏,我很抱歉,可能是一个非常愚蠢的问题,聪明的答案是“不要这样做,你这个傻瓜!”。
您正在寻找'FULL OUTER JOIN',但是它尚未在MySQL中实现。它看起来最好的答案是Adam Ruth。 – Michas 2010-07-06 10:57:04