mysql JOIN ON column ='文字字符串或值'未返回预期结果

时间:2020-02-12 09:24:03

标签: mysql join left-join

在此查询中,我需要结果仅返回具有 userID = 12345678的行,结果还包含具有其他 userID

的字段>
select `a`.*, `b`.`someField` from `a` left join `b` on `a`.`userID` = '12345678'

我该如何解决?

1 个答案:

答案 0 :(得分:0)

您使用错误的JOIN条件:

SELECT `a`.*, `b`.`someField` 
from `a` left join `b` on a.matchingField = b.matchingField
WHERE `a`.`userID` = '12345678'

这是进行适当联接的方法。您有一个字段,即matchingField,该字段是一个表中的记录与另一个表中的记录之间的链接,而userID是过滤条件。 请注意,macthingField也可以是相同的用户ID。在这种情况下:

SELECT `a`.*, `b`.`someField` 
from `a` left join `b` on a.userID = b.userID
WHERE `a`.`userID` = '12345678'
相关问题