SQL将两个表连接到多个列

时间:2016-05-18 10:25:48

标签: sql oracle-sqldeveloper

有没有办法将两个表连接到多个列,例如我们在第一个表中: -

Headers = Name, AB1, AB2, AB3, AB4
Data = Lee, A, B, C ,D

我们有第二张表: -

Headers = Type, Time
Data = A,1
Data = B,2
Data = C,3
Data = D,4

我正在加入这两个表,所以我得到以下内容,因此每个AB列都会从另一个表中查找时间值。

Name, AB1, AB2, AB3, AB4, AB1_time, AB2_time, AB3_time, AB4_time,
Lee, A, B, C, D, 1, 2, 3, 4

我当时想要做多个连接,但是真的不知道如何最好地去做。上面的数据是一个简单的例子,但实际上我有两个大规模的SQL表,然后我将与其他数据集冲突。

1 个答案:

答案 0 :(得分:0)

您使用这样的多个联接:

select t1.*, t2a.time. t2b.time, t2c.time, t2d.time
from t1 left join
     t2 t2a
     on t1.ab1 = t2a.type left join
     t2 t2b
     on t1.ab2 = t2b.type left join
     t2 t2c
     on t1.ab3 = t2c.type left join
     t2 t2d
     on t1.ab4 = t2d.type ;