数据库:笛卡尔积、内连接、左连接、右连接

Carnelian ·
更新时间:2024-11-10
· 928 次阅读

在关系型数据库中经常用到多表查询操作,因此连接(join)就是一种非常重要的手段。

在学习中使用两个表进行辅助了解 employee 员工表,department 部门表

employee 

department

1.笛卡尔积

笛卡尔积在SQL中的实现方式既是交叉连接(Cross Join)。所有连接方式都会先生成临时笛卡尔积表,笛卡尔积是关系代数里的一个概念,表示两个表中的每一行数据任意组合,下图中两个表连接即为笛卡尔积(交叉连接)

内连接查询中的限制条件,取到的数据就是表中同时满足限制条件的数据,对于单表来说,内连接取的是两表中满足条件的交集

3.左外连接

是指以左边的表的数据为基准,去匹配右边的表的数据,如果匹配到就显示,匹配不到就显示为null。

关键字left outer join,等效于left join,在关联查询中,做外连接查询就是左连接查询,两者是一个概念。

select e.id,e.name,e.depid,d.name from employee e left join department d on e.depid = d.id

on之后的条件,emloyee 左连接department的限制条件

4.右外连接

类似于左外连接,右外连接是以右边的表为基准匹配左边的表,如果匹配到就显示,匹配不到就显示null

select e.id,e.name,e.depid,d.name from employee e right join department d on e.depid = d.id

IAmAStudentForever 原创文章 46获赞 51访问量 4万+ 关注 私信 展开阅读全文
作者:IAmAStudentForever



连接 数据 笛卡尔 内连接 笛卡尔积 数据库

需要 登录 后方可回复, 如果你还没有账号请 注册新账号