sql中join和left join的区别
时间: 2024-07-18 13:01:37 浏览: 71
hive sql + left join 数据缺失
SQL中的`JOIN`和`LEFT JOIN`都是用于合并两个或更多表中的数据,但它们有关键的区别:
1. `JOIN`:当两个表之间存在匹配的记录时,`JOIN`会返回那些在指定条件下的共同行。如果某一行在其中一个表中没有匹配,那么结果集中将不会包含这一行。`JOIN`主要有三种类型:INNER JOIN、LEFT JOIN(也称为OUTER JOIN)和RIGHT JOIN,其中INNER JOIN是最常见的一种,它只保留两表交集的结果。
2. `LEFT JOIN`(或`LEFT OUTER JOIN`):`LEFT JOIN`始终从左表开始,并包括所有左表中的行。如果左表中的行在右表中找不到匹配,则结果中的相应列会被填充NULL值。这表示即使没有找到匹配,也不会完全排除左表的数据。
简而言之,`JOIN`仅显示匹配的数据,而`LEFT JOIN`则显示左表的所有数据以及右表的匹配数据,如果无匹配则补充NULL值。这就是它们的主要区别。
阅读全文