left join和join 的区别
时间: 2024-04-18 19:22:13 浏览: 74
inner join、 left join 、right join、 outer join之间的区别
left join和join的区别在于返回的结果集不同。
- join(内连接):返回两个表中有交集的部分,即只返回两个表中满足连接条件的行。如果两个表没有交集,则不返回任何结果。
- left join(左连接):返回左表中的所有行,以及右表中满足连接条件的行。如果右表中没有匹配的行,则返回NULL值。
下面是一个示例,演示了left join和join的区别[^1]:
假设有两个表:表A和表B。
表A的数据如下:
```
id name
1 Alice
2 Bob
3 Charlie
```
表B的数据如下:
```
id score
1 80
3 90
4 70
```
使用join(内连接)查询:
```sql
SELECT A.id, A.name, B.score
FROM A
JOIN B ON A.id = B.id;
```
结果:
```
id name score
1 Alice 80
3 Charlie 90
```
使用left join(左连接)查询:
```sql
SELECT A.id, A.name, B.score
FROM A
LEFT JOIN B ON A.id = B.id;
```
结果:
```
id name score
1 Alice 80
2 Bob NULL
3 Charlie 90
```
可以看到,使用join只返回两个表中有交集的部分,而使用left join则返回左表中的所有行,以及右表中满足连接条件的行。
阅读全文