mysql的4种join

1、内连接(inner join 可简写为join)

就是交集,也就是两张表的共同数据

select * from a [inner] join b on a.key = b.key

2、左外连接

从集合上看就是A,B的交集加上A的私有

select * from a left join b on a.key = b.key

3、右外连接

从集合上看就是A,B的交集加上B的私有

select * from a right join b on a.key = b.key

4、全外连接

从集合上看:就是A和B的共有+A的私有+B的私有 (AB全有)

select * from a full outer join b on a.key = b.key;

注意:上面的sql只在Oracle中适用,MYSQL中不支持,因此在MYSQL中想要实现全外连接,得用联合查询(union)实现

联合查询就是把两个sql语句的结果取并集

-- union:去重复值  union all:不去重复值
select * from a left join b on a.key = b.key 
union
select * from a right join b on a.key = b.key
posted @ 2023-09-13 10:35  種瓜得豆  阅读(95)  评论(0编辑  收藏  举报