mysql left join on 条件和whered 的区别
时间: 2023-10-31 18:32:23 浏览: 83
left join 过滤条件写在on后面和写在where 后面的区别
`LEFT JOIN` 和 `WHERE` 语句都可以用于对查询结果进行筛选,但它们的作用不同。
`LEFT JOIN` 用于连接两个或多个表,以便将它们的行合并到一起。在 `LEFT JOIN` 中,即使右侧的表中没有匹配的行,左侧的表中的所有行也会出现在结果中。`ON` 条件用于指定连接的条件,即确定哪些行应该合并在一起。
`WHERE` 用于对查询结果进行过滤,以便只返回符合指定条件的行。`WHERE` 条件是在 `JOIN` 操作完成之后应用的,它可以进一步筛选已经合并在一起的行。相比之下,`ON` 条件是在 `JOIN` 操作时应用的,它用于确定哪些行应该合并在一起。
因此,`LEFT JOIN ON` 和 `WHERE` 语句的区别在于,前者用于连接表并合并行,后者用于对已经合并的行进行筛选。
阅读全文