mysql---外连接

定义:
外连接: 假设A和B表进行连接,使用外连接的话,AB两表中的一张表为主表,一张为副表,主要查询的主表中的数据,捎带查询一下副表,当副表中的数据没有和主表中的数据匹配上,副表自动模拟出Null与之匹配。

特点;主表中的数据无条件的全部显示出来

内连接: 假设A和B表进行连接,使用内连接的话,凡是A表和B表能够匹配上的记录查询出来,这就是内连接。 AB两表没有主次之分

分类:
左外连接:
表示左边的表为主表
右外连接:
表示右边的表为主表

左连接有右连接的写法,右连接又有左连接的写法。

CREATE TABLE `course` (
  `ID` int NOT NULL AUTO_INCREMENT,
  `CouName` varchar(45) COLLATE utf8_bin DEFAULT '',
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 COLLATE=utf8_bin

在这里插入图片描述

CREATE TABLE `student` (
  `ID` int NOT NULL AUTO_INCREMENT,
  `stuName` varchar(45) COLLATE utf8_bin DEFAULT '' COMMENT '姓名',
  `stuAge` int DEFAULT '0' COMMENT '年龄',
  `Cid` int DEFAULT '0' COMMENT '班级id',
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_bin

在这里插入图片描述
左外连接:(student 为主表)的左外连接

select b.stuName, c.CouName from book.student as b left join book.course as c on b.Cid = c.ID;

result

在这里插入图片描述

右外连接:还是以student 为主表

select b.stuName, c.CouName from book.course as c right join  book.student as b on b.Cid = c.ID;

result

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值