• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    一篇文章带你了解数据库中JOIN的用法
    POST TIME:2021-10-18 23:59

    前言

    本章主要介绍数据库中Join的的用法,也是我们在使用数据库时非常基础的一个知识点。本次会介绍数据库中的 inner join、 left join、 right join 的用法以及它们之间的区别。 文章如有错误还请大家及时指出~

    以下都是采用mysql数据库

    Join

    相信大家在学习数据库的使用时,都有使用过Join,对数据库中的两张或两张以上表进行连接操作。

    Join 分为:

    其中外连接分为:

    说明:

    1.其中外连接的“OUTER”关键字可以省略不写。 2.内连接用于返回满足连接条件的记录;而外连接则是内连接的扩展,它不仅会满足连接条件的记录,而且还会返回不满足连接条件的记录。

    笛卡尔积

    在我们进行多表联合查询的时候会出现的一种情况——笛卡尔积现象

    我们以下面两张表举例:

    学生表(Student)

    ID StudentName StudentClassID
    1 小明 1
    2 小红 2
    3 小兰 3
    4 小吕 2
    5 小梓 1

    班级表(Class)

    ClassID ClassName
    1 软件一班
    2 软件二班
    3 软件三班

    当我们进行查询操作的时候:

    select * from Student,Class;

    就会出现上面的情况,也就是笛卡尔现象,表Student中有5条记录,表Class中有3条记录,那么对于表Student而言有5种选择,对于表Class来说有3种选择。所以一共有 5 * 3 = 15种选择了,也就是笛卡尔积。

    内连接——inner join

    内连接查询返回满足条件的所有记录,默认情况下没有指定任何连接则为内连接。 例如:查询xx学生在xx班级 沿用上面的数据表

    select stu.StudentName,cl.ClassName from Student stu inner join Class cl on stu.StudentClassID=cl.ClassID;

    查询结果

    左外连接——left join

    左外连接查询不仅返回满足条件的所有记录,而且还会返回不满足连接条件的连接操作符左边表的其他行。 我们在原Student 表中新增学生:小美 

    例如: 查询xx学生在xx班级 沿用上面的数据表

    select stu.StudentName,cl.ClassName from Student stu left join Class cl on stu.StudentClassID=cl.ClassID;

    查询结果

    右外连接——right join
    右外连接查询不仅返回满足条件的所有记录,而且还会返回不满足连接条件的连接操作符右边表的其他行。 我们在原Class表中新增班级:

    软件四班

     例如: 查询xx学生在xx班级 沿用上面的数据表

    select stu.StudentName,cl.ClassName from Student stu right join Class cl on stu.StudentClassID=cl.ClassID;

    查询结果

    全连接——full join

    全连接查询不仅返回满足条件的所有记录,而且还会返回不满足连接条件的其他行。

    注:mysql默认不支持full join。

    这里我们就不做介绍了。

    文末

    本章节主要介绍了Iterable与Iterator之间的区别与联系,以及其他方面的小知识点,也是面试过程中会出现的内容点。

    好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。

    您可能感兴趣的文章:
    • 数据库中的左连接(left join)和右连接(right join)区别
    • 数据库Left join , Right Join, Inner Join 的相关内容,非常实用
    • CI框架数据库查询之join用法分析
    • sql join on 用法
    • SQL中JOIN和UNION区别、用法及示例介绍
    • 浅析Mysql Join语法以及性能优化
    • MySQL JOIN之完全用法
    • sql 左连接和右连接的使用技巧(left join and right join)
    • SQL的Join使用图解教程
    上一篇:如何在一个千万级的数据库查询中提高查询的效率?
    下一篇:一篇文章带你了解数据库中group by的用法
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信