MySQL的左连接、右连接、内连接用法解读

 更新时间:2024年03月25日 15:53:35   作者:Yang森林  
这篇文章主要介绍了MySQL的左连接、右连接、内连接用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

一、写法

1.左连接:

SELECT student.Sno,Sname,Ssex,Sbirth,Sclass,Cno,Grade

FROM student LEFT OUTER JOIN sc ON student.Sno=sc.Sno;

2.右连接:

SELECT student.Sno,Sname,Ssex,Sbirth,Sclass,Cno,Grade

FROM sc RIGHT OUTER JOIN student ON student.Sno=sc.Sno;

3.内连接:

SELECT student.Sno,Sname,Ssex,Sbirth,Sclass,Cno,Grade

FROM student  INNER JOIN sc ON student.Sno=sc.Sno;

二、基础表位置不同

1.左连接:

LEFT OUTER JOIN左边的为基础表,基础表为student,从sc中查找符合ON后条件的记录与LEFT OUTER JOIN左边的student表中对应记录进行连接,对于查找不到的记录LEFT OUTER JOIN左边的student表中对应记录属性值用NULL填充。

即使右表sc中没有匹配的记录,也从左表student返回所有的行,没匹配的属性值为NULL

2.右连接:

LEFT OUTER JOIN右边的为基础表,基础表为student,从sc中查找符合ON后条件的记录与LEFT OUTER JOIN右边的student表中对应记录进行连接,对于查找不到的记录LEFT OUTER JOIN右边的student表中对应记录属性值用NULL填充

3.内连接:

只返回匹配的值,无匹配值返回空值(相当于取交集)

三、如下所示

通过左连接获取数据,以左表为基础,显示左表所有记录,而右表中数据只显示与关联条件相匹配的记录,不匹配的属性值以NULL填充(LEFT JOIN等价于LEFT OUTER JOIN)

通过右连接获取数据,以右表为基础,显示右表所有记录,而左表中数据只显示与关联条件相匹配的记录,不匹配的属性值以NULL填充

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • mysql数据库如何求时间差

    mysql数据库如何求时间差

    这篇文章主要给大家介绍了关于mysql数据库如何求时间差的相关资料,MySQL提供了许多用于计算时间差的函数,可以方便地计算两个时间之间的时间差、取出时间段中的时间间隔等,需要的朋友可以参考下
    2023-08-08
  • MySQL查询空字段或非空字段(is null和not null)

    MySQL查询空字段或非空字段(is null和not null)

    本文介绍在MySQL中,面对值为空(NULL)的字段,应该如何查询。怎么判断一个字段的值为NULL或不为NULL,需要的朋友可以参考下
    2016-04-04
  • MySQL Count函数使用教程

    MySQL Count函数使用教程

    这篇文章主要介绍了MySQL Count函数,COUNT()是一个聚合函数,返回指定匹配条件的行数。开发中常用来统计表中数据,全部数据,不为NULL数据,或者去重数据
    2022-12-12
  • MySQL用B+树作为索引结构有什么好处

    MySQL用B+树作为索引结构有什么好处

    这篇文章主要介绍了MySQL用B+树作为索引结构有什么好处,帮助大家更好的理解和使用MySQL 索引,感兴趣的朋友可以了解下
    2021-01-01
  • MySQL中主键默认有索引吗

    MySQL中主键默认有索引吗

    MySQL主键默认是有索引的,在MySQL中,主键是用来唯一标识表中每一行数据的字段或字段组合,主键的作用是保证数据的唯一性,并且可以提高数据的查询效率,需要的朋友可以参考下
    2023-10-10
  • mysql select语句操作实例

    mysql select语句操作实例

    这篇文章主要介绍了mysql select语句操作实例,本文给出了ORDER BY查询、GROUP BY查询、LIMIT查询、UNION等语句的实例,需要的朋友可以参考下
    2014-12-12
  • 浅析mysql迁移到clickhouse的5种方法

    浅析mysql迁移到clickhouse的5种方法

    这篇文章主要介绍了mysql迁移到clickhouse的5种方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 最新mysql-5.7.21安装和配置方法

    最新mysql-5.7.21安装和配置方法

    这篇文章主要介绍了最新mysql-5.7.21安装和配置方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • MySQL服务器的SSD性能问题分析和测试详解

    MySQL服务器的SSD性能问题分析和测试详解

    这篇文章主要给大家介绍了关于MySQL服务器的SSD性能问题分析和测试的相关资料,文中图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • centos下安装mysql服务器的方法

    centos下安装mysql服务器的方法

    本篇文章是对在centos下安装mysql服务器的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论