码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MySQL join和索引


    目录

     一、join

    二、on

    三、left join和right join

    left join

    right join 

    四、MySQL Workbench 图形化软件


     一、join

    join具有连接作用。当两个或以上的表有关系时,就可以使用jion来连接这些相关的表处理或分析数据。

    join的相关连接机制如下:

    会发现jion后的列名是两个表加起来后的结果(可能会出现相同的情况,就像上面例子中一样)。S1 jion S2 后,S1中的列会与S2中的列一一合并一次最后组成新的表。所以上面的例子中最后生成的新表有3 * 2 = 6个列。

    如果这时候对这个新生成的表不满意,想要相对应的选项合在一起,我们可以选择使用on。

    二、on

    on用来添加约束。例如在使用S1 join S2合并表的时,我们想要让S1中的l1列与S2中的l2列相等匹配时,我们可以将语句改成:S1 join S2 on S1.l1 = S2.l2

    在列名不重复的前提下,我们也可以直接不用.操作符。

    还是上面那个例子:

    可以看到合并时不再像之前那样“傻瓜式”合并了,而是将classid和id相等的列合并成一条而形成的新的表。 

    三、left join和right join

    两个语句是同一个性质,和join相比,left / right join的区别主要在于left / right  join必须要有on。

    • left join

    left join语句会检查左边表的数据是否都包含在新的表中,如果缺少就用NULL填补上:

    要注意一点:对于left join来说左右表的位置很重要。在join中可以交换位置,最终生成的新表都是一样的;但是使用left join的话,交换左右表的位置最终合成的新表是完全不一样的。比如上面这个例子,如果将stu和class的位置交换:

     所以写的时候一定要注意。

    • right join 

    和left join同个性质相反:

    A right join B = B left join A --> 都是以B为基准的

    四、MySQL Workbench 图形化软件

    偶然发现的,下载之后连接上自己的库操作操作发现还挺方便的,可以在里面创建管理你的数据库。主要是可以图形化,设计的时候宏观看起来比较方便。但归根结底还是多用终端操作为好,这可以当个辅助。

    MySQL Workbench 使用教程 - 如何使用 Workbench 操作 MySQL / MariaDB 数据库中文指南 - 卡拉云说起终端操作,今天还装了一个插件可以自动补全sql语句,巨巨巨巨巨方便啊(咆哮,昨天还在为SQL语句总输错而烦恼。

    叫mycli,安装后使用时直接命令行打开相关库操作即可:

    还能给命令和表名列名标绿色,看起来舒服多了,我爱死。 

    看这可爱的自动补全
  • 相关阅读:
    摆脱障碍,通过技术实现企业财务数字化新高度
    手机一键换ip地址,解锁网络自由
    【C语言】C语言从入门到精通 | 第3章 实践与练习以及答案
    解决gogs勾选“使用选定的文件和模板初始化仓库”报错500,gogs邮件发送失败,gogs邮件配置不生效,gogs自定义模板等问题
    Postman接口断言&上下游参数传递
    包含日志文件
    替换SlowFast中Detectron2为Yolov8
    QFont-使用外部字体文件的问题
    移动支付新时代——低代码如何对接支付宝和微信支付
    射频微波芯片设计2:滤波器芯片
  • 原文地址:https://blog.csdn.net/Yan__Ran/article/details/125893125
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号