SELECT
a.First_Name
,b.Last_Name
FROM table a
JOIN table b
UNION table c
ON a.ID=b.ID
我甚至不确定语法是如何形成的。基本上我想要的是UNION表b和c然后将新表连接到表a。
答案 0 :(得分:1)
您可以加入子查询:
SELECT
a.First_Name,
bc.Last_Name
FROM a
JOIN
(
SELECT ID, Last_Name FROM b
UNION
SELECT ID, Last_Name FROM c
) bc ON bc.ID = a.ID;
答案 1 :(得分:0)
使联合成为子查询:
SELECT
a.First_Name
,bc.Last_Name
FROM table a
JOIN (
SELECT * FROM table b
UNION
SELECT * FROM table c
) AS bc
ON a.ID=bc.ID
请注意,子查询必须有自己的别名(在本例中为bc
),应在join子句和select中引用(意味着您不能引用表b
或{直接在子查询之外的{1}}。
答案 2 :(得分:0)
如果您使用正确的连接子句
,则联合的结果可以加入其他表你可以使用这个sintax
select a.col1, t.name
from table3 c
inner join (
select id, name1 as name
from table1 a
union id, name2
from table2 b
) t on. t.id = a.id