SQL之连接查询ON条件无效问题
SQL之连接查询ON条件无效问题
错误示例
SELECT
*
FROM
a
LEFT JOIN b ON a.id = b.id
AND a.id IS NOT NULL
AND a.id IS NOT NULL条件无效(连接查询条件只对b表起作用)
on只是对局部条件做限制,而where是对全局做限制,什么是全局做限制呢,也就是相当于,对最后查询出来的整个结果做限制。
正确示例
SELECT
*
FROM
a
LEFT JOIN b ON a.id = b.id
WHERE
a.id IS NOT NULL