mysql左连接,右连接,全连接,公共连接

本文介绍了如何在MySQL中创建表并进行数据插入,然后详细阐述了左连接、右连接以及如何实现全连接(MySQL不直接支持,但可通过左连接与右连接的UNION实现)。此外,还总结了插入数据时主键的处理方式以及不同连接类型的特点。

一、建表
create table Guoji_A (
id bigint primary key AUTO_INCREMENT,
name varchar(20) ,
tel bigint
)

create table Guoji_B (
id bigint primary key AUTO_INCREMENT,
name varchar(20) ,
address bigint
)

二、插数据
insert into Guoji_A values (null,“大娃”,186),(null,“二娃”,187),(null,“三娃”,188),(null,“五娃”,189);

insert into Guoji_B values (null,“二娃”,10002),(null,“三娃”,10003),(null,“四娃”,10004);

三、表关联

select * from Guoji_A a left join Guoji_B b on a.name = b.name;
在这里插入图片描述
select * from Guoji_A a right join Guoji_B b on a.name = b.name;
在这里插入图片描述
☆☆☆☆☆☆mysql不支持全连接 用左连接联合右连接
select * from Guoji_A a LEFT JOIN Guoji_B b on a.name = b.name

UNION select * from Guoji_A a RIGHT JOIN Guoji_B b on a.name = b.name;
在这里插入图片描述
select * from Guoji_A a join Guoji_B b on a.name = b.name;
在这里插入图片描述

总结:
1、建表时 varchar 需要写字段最大长度;
2、插入数据时 主键id自增 ,只需写null
3、左连接,左表全有,右边缺的字段补null
右连接:右表全有,左边缺的字段补null
全连接(mysql不支持,可以通过union):左右表全有,缺字段补null
交集:join 左右表共有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值