join/left join条件写在on后面和where后面的区别
时间: 2023-08-16 18:16:28 浏览: 111
解析mysql left( right ) join使用on与where筛选的差异
5星 · 资源好评率100%
在使用join和left join时,条件写在on后面和where后面是有区别的。当条件写在on后面时,它是作为连接的条件,只有同时满足on后面的条件和连接的条件,才会进行连接。而且,使用left join时,保证了左表的完整性。\[1\]
当条件写在where后面时,它是作为筛选条件,根据where后面的条件来连接两个表。这种情况下,没有保证主表数据完整的限制。\[3\]
总结来说,当使用join时,条件放在where后面和on后面是一样的,因为没有保证主表数据完整的限制。而在使用left join时,条件写在on后面可以保证左表的完整性。\[2\]
#### 引用[.reference_title]
- *1* *3* [join/left join条件写在on后面和where后面的区别](https://blog.csdn.net/YangTinTin/article/details/107967968)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [LEFT JOIN条件在on后面和在where后面的区别](https://blog.csdn.net/qq_43479628/article/details/122255251)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文