join on和where
时间: 2023-09-21 14:08:52 浏览: 89
回答: 在使用join时,on和where后面跟条件的区别如下:on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的数据,右边表不符合条件的话就显示为空(这个是left join,right join 则相反)。而where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义了,条件不为真的就全部过滤掉。\[3\]简单来说,on后面的条件是用来连接两个表的,而where后面的条件是对连接后的临时表进行过滤的条件。\[2\]
#### 引用[.reference_title]
- *1* *2* [把条件写在 join on 后面和写到where后面的区别](https://blog.csdn.net/xjx891111/article/details/95486685)[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^control,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [join 中的on和where的区别](https://blog.csdn.net/jiayoubaobei2/article/details/127497420)[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^control,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文