我有以下表格:
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中。
谢谢!
答案 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