left join和join on区别
时间: 2023-08-24 17:14:58 浏览: 60
left join中on和where的区别在于:
1. on是连接条件,用于指定两个表之间的关联关系,只有满足on条件的记录才会被连接起来。
2. where是过滤条件,用于筛选符合条件的记录,只有满足where条件的记录才会被返回。
简单来说,on是连接条件,where是过滤条件。on用于连接两个表,where用于筛选记录。
相关问题
join on和left join on的区别
join on和left join on的区别在于它们的连接方式和结果集的显示方式。join on是内连接,表示只有在两个表中都存在匹配的记录时才会显示,而left join on是左连接,表示以左边的表为基准,不管右边的表是否有匹配的记录都会显示。\[2\]
具体来说,在join on中,只有满足连接条件的记录才会被包含在结果集中,而在left join on中,左边的表的所有记录都会被包含在结果集中,而右边的表如果没有匹配的记录,则会显示为NULL值。
另外,需要注意的是,对于Join连接,on和where实际上是一样的,经过InnoDB优化后,on连接条件会转化为where条件。\[3\]所以在实际使用中,可以根据需要选择使用join on或left join on来进行表的连接操作。
#### 引用[.reference_title]
- *1* *3* [mysql之left join、join的on、where区别看这篇就懂](https://blog.csdn.net/weixin_44981707/article/details/110739121)[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_2,239^v4^insert_chatgpt"}} ] [.reference_item]
- *2* [left join on和 join on的区别](https://blog.csdn.net/qq_43470725/article/details/125430975)[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_2,239^v4^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
inner join on和left join on区别
INNER JOIN ON 和 LEFT JOIN ON 是关系型数据库中的两种常见的 JOIN 操作。它们的区别在于 JOIN 的方式和结果集的不同。
INNER JOIN ON 是一种基于两个表中有相同值的列来连接表的方式,它会返回两个表中都存在的数据。如果两个表中的数据没有匹配的值,则不会显示这些数据。
LEFT JOIN ON 也是基于两个表中有相同值的列来连接表的方式,但它会返回左侧表中的所有数据,不论右侧表中是否存在匹配的值。如果右侧表中没有匹配的值,则返回 NULL。
简单来说,INNER JOIN ON 只返回两个表中都存在的数据,而 LEFT JOIN ON 则返回左侧表的所有数据和右侧表中匹配的数据。