我目前遇到的问题是如何在同一个表中分别获取数据,但条件不同。
为了更好地说明,请将下面的示例作为我的表格。
争议表
engine.o: engine.c engine.h temp.h
gcc -c engine.c
用户表
id | user_to | bidder_id
1 | 1 | 2
我想要一个结合了这两者的输出:
最终输出表
user_id | user_name
1 | lawrencetecho
2 | joshuaisanan
我不知道如何真正说出来,但我希望插图有所帮助:
它寻求" user_to"和" bidder_id"行,将它们关联到" user_id"在users表中,它创建两个新的列,用于关联" user_id"和" bidder_id"到users表中的相应ID,并在字段中给出的id中获取user_name。
答案 0 :(得分:4)
LEFT JOIN是你的朋友。见例子:
<强>样品强>
SELECT d.*,
utn.user_name AS user_to_name ,
bin.user_name AS bidder_id_name
FROM disputes d
LEFT JOIN users utn on utn.user_id = d.user_to
LEFT JOIN users bin on bin.user_id = d.bidder_id;