如何在2个ID上连接MySQL中的2个表
我有以下MySQL查询:如何在2个ID上连接MySQL中的2个表,mysql,join,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和dispositions)连接到字段disposition\u id\u 1
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
和dispositions
)连接到字段disposition\u id\u 1
)中。此查询工作正常,并显示我的结果
问题是我的leads
表中有第二个字段名为disposition\u id\u 2
,它与我的dispositions
表中的字段disposition\u id\u 1
完全相同。因此,这两个字段都与同一个表相关,并通过ID连接
那么,我如何将leads表与第二个字段上的dispositions表(
disposition\u id\u 2
)连接起来呢?考虑到leads表已经与字段disposition\u id\u 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的所有记录。如果您只需要匹配其中一个字段,请使用
或而不是和,您可以使用别名多次联接表:
SELECT somefield, t1.x, t2.x
FROM ...
JOIN othertable AS t1 ON ...
JOIN othertable AS t2 ON ...
好的-但是“disposition.name”是指向disposition\u id\u 1还是disposition\u id\u 2的值?只有一个disposition.name
(假设它是disposition.name而不是disposition\u name),这将指向dispositions.id
not lead.disposition\u id.