欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

SQL左连接和右连接原理及实例解析

程序员文章站 2022-07-02 15:20:54
两张表,a表中的记录b表中不一定有。 左连接:关注左边,右边没有就为空。 右连接:关注右边,左边没有就为空。 内连接:返回交集 例如:student表s id...

两张表,a表中的记录b表中不一定有。

  • 左连接:关注左边,右边没有就为空。
  • 右连接:关注右边,左边没有就为空。
  • 内连接:返回交集

例如:

student表s

id name age class_id
1 yang 22 1
2 su 20 1
3 fan 20 2
4 li 30 2
5 luo 22

class表c

id name total
1 大一 30
2 大二 15
3 大三 40

在上面的表中,s表中的5号记录在c表中是找不到数据的。

1.左连接,left join左边为主要表,次表没有对应的就显示null。

select s.`name`,s.`class_id` from student s left join class c on s.`class_id`=c.`class_id`

结果


name class_id
yang 1
su 1
fan 2
li 2
luo (null)

2.右连接,right jion右边为主要表,次表没有对应的就显示null。

select s.`name`,s.`class_id` from student s right join class c on s.`class_id`=c.`class_id`

结果


name class_id
yang 1
su 1
fan 2
li 2
(null) (null)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。