我可以将表1的列与表2的行连接起来吗?

时间:2018-11-22 07:02:22

标签: sql

如果我有2张这样的桌子:

表1

id    |    u1    |    u2    |     u3      |     u4
---------------------------------------------------
1     |   abc1   |   abc1   |    abc2     | null

表2

id    |  name
--------------
abc1  |  dallas

abc2  | erika

我可以这样获得联接函数结果吗??? :

X     |    Y    |   Z
----------------------
u1    |    abc1 |   dallas

u2    |    abc1 |   dallas

u3    |    abc2 |   erika

u4    |   NULL  |  NULL

1 个答案:

答案 0 :(得分:1)

您可以尝试使用全部并左连接

select * from
(
select 'u1' as id,u1 as uname from table1
union all
select 'u2',u2 from table1
union all
select 'u3',u3 from table1
union all
select 'u4',u4 from table1
) A left join table2 B on a.uname=b.id