我遇到了MySQL连接问题.
Table_A: A_id Cost1 A1_id Cost2
1 500 0 200
1 100 1 100
1 50 2 60
1 10 3 50
2 5 0 10
Run Code Online (Sandbox Code Playgroud)
Table_B(参考B_id:来自Table_A A1_id): B_id FName LName
1 X A
2 Y B
3 Z C
Run Code Online (Sandbox Code Playgroud)
Table_C(参考C_id:来自Table_A A_id):C_id Towns
1 Atlanta
2 NewYork
Run Code Online (Sandbox Code Playgroud)
我需要组合所有三个表,如下面的输出:
Towns那场比赛(Table_A.A_id=Table_C.C_id).Fname,Lname匹配(table_A.A1_id=Table_b.b_id).Townsif A1_id != 0.Fname,Lname如果A1_id == 0.其余数据可以是值或null,我将其指定为"#".对于给定的场景,什么是高效的MySQL查询?
A_id Cost1 A1_id cost2 Fname Lname Towns
1 500 0 200 # # Atlanta
1 100 1 100 X A #
1 50 2 60 Y B #
1 10 3 50 Z C #
Run Code Online (Sandbox Code Playgroud)
我认为它应该是这样的.
select A_id, Cost1, A1_id, cost2, Fname, Lname, Towns
from Table_A
left join Table_B on table_A.A1_id = Table_b.b_id
left join Table_C on Table_A.A_id = Table_C.C_id
Run Code Online (Sandbox Code Playgroud)