如何在2个ID上连接MySQL中的2个表

时间:2013-05-03 18:18:53

标签: mysql join

我有以下MySQL查询:

SELECT dispositions.name as disposition_name,leads.first_name,leads.city,leads.province_state,leads.country
FROM leads
LEFT JOIN dispositions ON leads.disposition_id_1=dispositions.id

此查询在字段leads上加入2个表(dispositionsdisposition_id_1)。
这样可以正常工作并向我显示结果。

问题是我的leads表格中有第二个字段disposition_id_2,它与我的dispositions表格一样,与字段disposition_id_1完全相同。因此,这两个字段都与同一个表相关,并通过ID连接。

那么我如何在第二个字段(disposition_id_2)上使用配置表加入潜在客户表,因为它已经与字段disposition_id_1在同一个表上加入了?

2 个答案:

答案 0 :(得分:1)

您可以使用相同的ID加入多个字段,这不重要。

SELECT dispositions.name 
as 
disposition_name,
leads.first_name,
leads.city,
leads.province_state,
leads.country 
FROM 
leads 
LEFT JOIN 
dispositions 
ON leads.disposition_id_1=dispositions.id
AND leads.disposition_id_2=dispositions.id

此处将获取id_1和id_2均等于dispositions.id的所有记录。如果您只需要匹配任一字段,请使用OR代替AND

答案 1 :(得分:0)

您可以使用别名多次连接表格:

SELECT somefield, t1.x, t2.x
FROM ...
JOIN othertable AS t1 ON ...
JOIN othertable AS t2 ON ...