面试 left join/right join/inner join区别

文章详细解释了数据库查询中的三种连接方式:LEFTJOIN保留左侧表格所有数据,显示右侧表格的匹配部分;RIGHTJOIN反之,保留右侧表格所有数据;INNERJOIN只显示两个表格的交集数据。通过用户表和角色表的例子帮助理解这些概念。
摘要由CSDN通过智能技术生成

面试 left join/right join/inner join区别

left join

即左连接,查出来的结果显示左边表的所有数据,然后右边表显示的是和左边表有交集部分的数据。
比如a表左连接b表,查出来的结果显示a表的所有数据和b表中与a表有交集的数据。
在这里插入图片描述

举个例子

一张用户表,包含两个用户及其角色id;一张角色表,包含两个角色。
在这里插入图片描述在这里插入图片描述
现通过角色表左连接用户表进行查询,因为右表中与左表有交集的只有role_id为1的情况,因此在第三行查询为空
在这里插入图片描述

right join

即右连接,查出来的结果显示右边表的所有数据,然后左边表显示的是和右边表有交集部分的数据。
比如a表右连接b表,查出来的结果显示b表的所有数据和a表中与b表有交集的数据。
在这里插入图片描述

举个例子

现通过用户表右连接角色表进行查询,因为右表中与左表有交集的只有role_id为1的情况,因此在第三行查询为空
在这里插入图片描述

inner join

inner join可简写为join,即内连接,表示查询出的结果为两个表的交集部分
在这里插入图片描述

举个例子

用户表内连接角色表
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值