当前位置:   article > 正文

MySQL 7种JOIN

MySQL 7种JOIN
CREATE TABLE `tbl_emp` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`deptId` int(11) DEFAULT NULL,
PRIMARY KEY (`id`) ,
KEY `fk_dept_id`(`deptId`)
)ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8;

CREATE TABLE `tbl_dept` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`deptName` varchar(30) DEFAULT NULL,
`locAdd` varchar(40) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8;

insert into tbl_dept(deptName,locAdd) values('RD',11);
insert into tbl_dept(deptName,locAdd) values('HR',12);
insert into tbl_dept(deptName,locAdd) values('MK',13);
insert into tbl_dept(deptName,locAdd) values('MIS',14);
insert into tbl_dept(deptName,locAdd) values('FD',15);

insert into tbl_emp(NAME,deptId) values('z3',1);
insert into tbl_emp(NAME,deptId) values('z4',1);
insert into tbl_emp(NAME,deptId) values('z5',1);
insert into tbl_emp(NAME,deptId) values('w5',2);
insert into tbl_emp(NAME,deptId) values('w6',2);
insert into tbl_emp(NAME,deptId) values('s7',3);
insert into tbl_emp(NAME,deptId) values('s8',4);
insert into tbl_emp(NAME,deptId) values('s9',51);

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
1.内连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SqI74zsa-1634201938323)(7种join连接.assets/image-20211014163556189.png)]

select * from tbl_emp inner join tbl_dept on tbl_emp.deptId = tbl_dept.id;
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CbwoniuH-1634201938325)(7种join连接.assets/image-20211014163525337.png)]

2.左外连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1tSMn3FV-1634201938326)(7种join连接.assets/image-20211014163616698.png)]

select * from tbl_emp left join tbl_dept on tbl_emp.deptId = tbl_dept.id;
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jZlOLybs-1634201938327)(7种join连接.assets/image-20211014163639715.png)]

3.右外连接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9V5wvVMO-1634201938327)(7种join连接.assets/image-20211014163829331.png)]

select * from tbl_emp right join tbl_dept on tbl_emp.deptId = tbl_dept.id;
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LvJ5pQmG-1634201938329)(7种join连接.assets/image-20211014163817467.png)]

4.A独有

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w6FpArib-1634201938329)(7种join连接.assets/image-20211014164237226.png)]

select * from tbl_emp left join tbl_dept on tbl_emp.deptId = tbl_dept.id where tbl_dept.id is null;
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-E0iItH25-1634201938329)(7种join连接.assets/image-20211014164133354.png)]

5.B独有

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wkjDtFhl-1634201938330)(7种join连接.assets/image-20211014164303882.png)]

select * from tbl_emp right join tbl_dept on tbl_emp.deptId = tbl_dept.id where tbl_emp.deptId is null;
  • 1

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l5QEX511-1634201938330)(7种join连接.assets/image-20211014164421914.png)]

6.全有

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XW3vNvHE-1634201938330)(7种join连接.assets/image-20211014164523483.png)]

MySQL不支持全连接!! 不能使用full outer join

使用union来完成,union作用:合并+去重

select * from tbl_emp left join tbl_dept on tbl_emp.deptId = tbl_dept.id
union
select * from tbl_emp right join tbl_dept on tbl_emp.deptId = tbl_dept.id;
  • 1
  • 2
  • 3

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0TRhlTUI-1634201938331)(7种join连接.assets/image-20211014164931068.png)]

7.A独有与B独有

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gNCbCgyo-1634201938331)(7种join连接.assets/image-20211014164543892.png)]

select * from tbl_emp left join tbl_dept on tbl_emp.deptId = tbl_dept.id where tbl_dept.id is null
union
select * from tbl_emp right join tbl_dept on tbl_emp.deptId = tbl_dept.id where tbl_emp.deptId is null;
  • 1
  • 2
  • 3

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CvPYt59L-1634201938331)(7种join连接.assets/image-20211014165402868.png)]

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/1020614
推荐阅读
相关标签
  

闽ICP备14008679号