小编Pav*_*kis的帖子

INNER JOIN用于同一外键的两列

假设我们有两个表:

表TA

AID BID1 BID2
--  ---- ----
01  01   02
02  01   03
03  02   01
Run Code Online (Sandbox Code Playgroud)

表TB

BID Name
--- ----
01  FOO
02  BOO
03  LOO
Run Code Online (Sandbox Code Playgroud)

如果我想返回以下内容:

AID Name1
--  -----
01  FOO
02  FOO
03  BOO
Run Code Online (Sandbox Code Playgroud)

我写了以下内容:

SELECT TA.AID, TB.Name as Name1 
FROM TB 
INNER JOIN TA on TB.BID = TA.BID1
Run Code Online (Sandbox Code Playgroud)

但是,我无法弄清楚如何返回对应于BID1和BID2的TB.Name.更具体地说,我想返回以下内容:

AID Name1 Name2
--  ----- -----
01  FOO   BOO
02  FOO   LOO
03  BOO   FOO
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

2
推荐指数
2
解决办法
126
查看次数

标签 统计

sql ×1

sql-server ×1

t-sql ×1