我正在尝试使用mysql“ NOT IN”条件时离开2个表。我遇到的问题是,如果left join为null,这意味着没有任何条目可以进行left join,那么mysql NOT IN运算符将无法正常运行。
这是一个例子。
SELECT PLAYERS.*,
TYPES.GUEST_ID
FROM PLAYERS
LEFT JOIN TYPES ON TYPES.GUEST_ID = PLAYERS.GUEST_ID
WHERE PLAYERS.ID = '1' AND TYPES.GUEST_ID NOT IN('1', '2')
由于当前TYPES表中没有匹配的行。NOT IN运算符不起作用。有什么解决方法吗?
用途IS NULL
:
SELECT PLAYERS.*, TYPES.GUEST_ID
FROM PLAYERS
LEFT JOIN TYPES ON TYPES.GUEST_ID = PLAYERS.GUEST_ID
WHERE TYPES.GUEST_ID NOT IN('1', '2') OR TYPES.GUEST_ID IS NULL
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句