我有两张桌子table1和table2。
table1具有:
code name
10 ABC
11 DEF
12 FGHtable2具有:
code1 code2 code3 Buyer
10 11 12 AAA
12 11 10 BBB
11 12 10 CCC 现在,我想进行SQL查询,获取code1、code2、code3、buyer和name of code1、code2和code3。我的SQL查询是:
SELECT t1.name, t2.code, t2.issued, t2.balance
FROM table1 t1, table2 t2
WHERE t1.code = t2.code; 使用此SQL查询时,不会根据每个代码获取名称。输出出错。我想要像{code1=10,name=ABC,code2=11,name=DEF,code3=12,name=FGH,buyer=AAA}这样的输出
发布于 2018-12-25 16:32:25
您必须使用不同的别名多次联接该表
SELECT t2.code, t2.issued, t2.balance,
tname1.name as code1_name,
tname2.name as code2_name,
tname3.name as code3_name
FROM table2 t2
JOIN table1 tname1 WHERE tname1.code = t2.code1
JOIN table1 tname2 WHERE tname2.code = t2.code2
JOIN table1 tname3 WHERE tname3.code = t2.code3发布于 2018-12-25 17:26:01
对于代码c1、c2和c3名称,您肯定需要3个连接,如下所示。
Select code1,c1.name,code2
,c2.name,code3,c3.name,buyer
from table2,
table1 c1,table1 c2,table1 c3 where
c1.code=code1 and c2.code=code2 and
c3.code=code3https://stackoverflow.com/questions/53920629
复制相似问题