加入2 cols id

时间:2016-12-04 17:10:22

标签: mysql sql

我有以下表格:

表A

from_no  | to_no    | msg    
43288519 | 59215348 | hi    
43288519 | 123456   | hello    
59215348 | 43288519 | how are you.

表B

contactno | Name    
43288519  | Priyam    
123456    | ADC   
59215348  | Ankur

我正在寻找的结果是:

from   | to     | msg    
Priyam | Ankur  | hi    
Priyam | adc    | hello   
Ankur  | Priyam | How are you

请分享相同的SQL语句。

2 个答案:

答案 0 :(得分:3)

您需要加入TableB两次

select B1.Name as from, B2.Name as to, a.Msg 
from TableA A 
join TableB B1 on A.from_no  = B1.contactno 
join TableB B2 on A.to_no = B2.contactno 

考虑到NULL&中没有任何from_noto_no的{​​{1}}列。

答案 1 :(得分:0)

同意@Prdp。

另一种方法,假设contactno是唯一的,是:

select
    (select name from tableb where contactono = t.from_no),
    (select name from tableb where contactono = t.to_no),
    msg
from
    tablea t;