联合并加入1个查询?

时间:2013-04-26 09:56:48

标签: mysql

我有以下表格:

TABLE1:

A   B   C
1   2   3
2   4   6
3   6   9

TABLE2:

A   B   C
4   8   12
5   10  15
6   12  18

表3:

A   D
2   X   
4   Y
6   Z

我需要一个查询:

A   B   C   D
1   2   3
2   4   6   X
3   6   9
4   8   12  Y
5   10  15  
6   12  18  Z

这可能吗?

我可以在2个查询中执行此操作,但我正在执行此操作的人希望它在1中。

谢谢!

2 个答案:

答案 0 :(得分:3)

试试这个(sqlfiddle上的例子):

SELECT x.a, x.b, x.c, d
FROM (
  SELECT a, b, c FROM table1
  UNION ALL
  SELECT a, b, c FROM table2
) x
LEFT JOIN table3 ON ( table3.a = x.a )

答案 1 :(得分:2)

不确定

select v1.*, table3.d 
from 
  (select table1.a, table1.b, table1.c 
   from table1
   union all
   select table2.a, table2.b, table2.c 
   from table2 
  ) v1
left join table3 on v1.a = table3.a