sql左连接、右连接、内连接有什么区别?

sql左连接、右连接、内连接有什么区别?
总结:语法公式不同、基础表不同、结果集不同。
一、语法公式不同:

  1. 左连接:
    左连接的关键字是left join,语法公式为select *from dave a left join bl b on a .id=b .id。
  2. 右连接:
    右连接的关键字是right join,语法公式为select *from dave a right join bl b on a .id=b .id。
  3. 内连接:
    右连接的关键字是inner join,语法公式为select *from dave a inner join bl b on a .id=b .id。

二、基础表不同:

  1. 左连接:左连接的基础表为left join左侧数据表,右表只会展示符合搜索条件的记录。
  2. 右连接:右连接的基础表为right join右侧数据表,左表只会展示符合搜索条件的记录,左表不足的地方用null填充。
  3. 内连接:并不以谁为基础,它只显示符合条件的记录

三、结果集不同:

  1. 左连接:左连接的结果集为left join左侧数据表中的数据,再加上left join左侧与右侧数据表之间匹配的数据。
  2. 右连接:右连接的结果集为rightjoin右侧数据表中的数据,再加上rightjoin左侧与右侧数据表之间匹配的数据。
  3. 内连接:并不以谁为基础,它只显示符合条件的记录。
  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当我们在处理数据库中的多个表时,连接操作是非常常见的。SQL中有几种连接类型,包括左连接右连接内连接和外连接。 1. 左连接(Left Join): 左连接返回左表中的所有记录,以及右表中与左表匹配的记录。如果右表中没有匹配的记录,则返回NULL值。 左连接的语法如下: ``` SELECT 列名 FROM 左表 LEFT JOIN 右表 ON 连接条件; ``` 相关问题: 1. 什么是左连接? 2. 左连接的语法是什么? 3. 左连接返回的结果是什么? 2. 右连接(Right Join): 右连接返回右表中的所有记录,以及左表中与右表匹配的记录。如果左表中没有匹配的记录,则返回NULL值。 右连接的语法如下: ``` SELECT 列名 FROM 左表 RIGHT JOIN 右表 ON 连接条件; ``` 相关问题: 1. 什么是右连接? 2. 右连接的语法是什么? 3. 右连接返回的结果是什么? 3. 内连接(Inner Join): 内连接返回两个表中满足连接条件的记录。只有在两个表中都存在匹配的记录时,才会返回结果。 内连接的语法如下: ``` SELECT 列名 FROM 表1 INNER JOIN 表2 ON 连接条件; ``` 相关问题: 1. 什么是内连接? 2. 内连接的语法是什么? 3. 内连接返回的结果是什么? 4. 外连接(Outer Join): 外连接包括左外连接和右外连接,它返回两个表中满足连接条件的记录,以及未匹配的记录。 左外连接返回左表中的所有记录,以及右表中与左表匹配的记录。如果右表中没有匹配的记录,则返回NULL值。 右外连接返回右表中的所有记录,以及左表中与右表匹配的记录。如果左表中没有匹配的记录,则返回NULL值。 外连接的语法如下: ``` SELECT 列名 FROM 左表 LEFT JOIN 右表 ON 连接条件; SELECT 列名 FROM 左表 RIGHT JOIN 右表 ON 连接条件; ``` 相关问题: 1. 什么是外连接? 2. 外连接的语法是什么? 3. 外连接返回的结果是什么?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值