当前位置: 首页 > news >正文

MySql学习杂谈 --- “连接“”

第一步忘掉所有术语记住一个生活场景想象你要做一件事查全班同学的考试成绩表A同学名单张三李四王五赵六表B考试成绩张三90分李四85分王五缺考没记录这时候你有两种需求需求1只查有成绩的人结果张三90李四85王五没成绩关我屁事我不关心。这叫INNER JOIN我只要两边都有的需求2查全班所有人有成绩的写分数没成绩的写“缺考”结果张三90李四85王五缺考赵六缺考这叫LEFT JOIN左边表格的全部我都要第二步怎么决定用哪个判断方法问自己一句话左边表格里的人一个都不能少吗一个都不能少 ---- 用LEFT JOIN可以少只想要有成绩的-----INNER JOIN就这么简单不要想别的第三步回到题目题目获取所有非manager员工薪水情况问自己员工表里的人一个都不能少吗答案是的因为我要找“所有非manager员工”必须看每一个员工判断他是不是manager。所以应该用LEFT JOIN 保留所有员工第四步那为什么你写的SQL里有INNER JOINfrom dept_emp a left join salaries b ... join dept_manager c ... ← 这个 join 就是 INNER JOIN问题出在这里你用join dept_managerINNER JOIN这会导致如果某个部门没有经理这个部门的员工全部消失就像全班同学名单员工表班长名单经理表如果你的班级根本没有选班长经理表里没记录你用INNER JOIN整个班级的同学都没了这不是你想要的吧第五步那LEFT JOIN WHERE怎么变成了INNER JOIN这是最容易搞混的地方我用最白的话解释LEFT JOIN salaries b ON ... WHERE b.to_date 9999-01-01执行过程LEFT JOIN 先执行把员工表和薪水表拼在一起张三 → 有薪水保留李四 → 有薪水保留王五 → 没薪水记录薪水字段显示 NULLWHERE 条件执行b.to_date 9999-01-01张三的 to_date 9999-01-01 ✅ 保留李四的 to_date 9999-01-01 ✅ 保留王五的 to_date NULL → 不等于 9999-01-01 ❌ 被删掉结果王五没了LEFT JOIN 变成了只保留有薪水的人这就是为什么说LEFT JOIN WHERE INNER JOIN第六步正确写法记住这个模板要保留左边全部FROM 左边表 LEFT JOIN 右边表 ON 连接条件 AND 右边表的过滤条件 WHERE 左边表的过滤条件第七步终极记忆法贴在你的电脑前什么时候用 LEFT JOIN?左边表格的人一个都不能少找“所有人”“所有员工”“所有用户”什么时候用 INNER JOIN可以少只想要两边都有的找“有订单的用户”“有成绩的学生”记住LEFT JOIN的过滤条件 - 放 ON后面WHERE只放左边表的过滤条件SQL执行的逻辑顺序写的顺序SELECT FROM LEFT JOIN WHERE实际执行的顺序FROM(包括所有JOIN) ON WHERE SELECT重点WHERE是最后执行的在所有JOIN完成之后给你一个绝对不会错的规则写SQL时这样操作先决定用LEFT还是INNER问左边能少人吗所有对右表的过滤条件都写在ON后面WHERE里面只写对左表的过滤条件
http://www.zskr.cn/news/1334832.html

相关文章:

  • i.MX8M Mini核心板Linux 6.1 BSP升级:内存带宽翻倍与嵌入式开发实战
  • 5015系列圆形连接器选型避坑指南
  • 还在用Win7/XP做测试?手把手教你用VMware Workstation 10 Pro搭建老系统环境(附10.0.7下载)
  • CentOS7时间不准?一个timedatectl命令搞定时区和手动校准
  • 从Vue/React到移动端:用Cordova 12把你的Web项目打包成Android App实战
  • 某包丨图片+视频去水印去除工具
  • 注册培训师、咨询师——杨刚老师简介
  • Lua 脚本执行 Redis 队列逻辑出现 ERR 错误怎么排查?
  • Seedance2.0内容创作干货!学会这四点教你用 Seedance 2.0 拍出电影感!
  • 合肥假发店TOP5评测|专业形象管理指南,揭秘靠谱之选! - 行业深度观察C
  • 2026年积分兑换柜优质品牌推荐榜:电子去向牌、礼品兑换柜、五育兑换柜、五金电子门牌、人员去向电子牌、会议电子门牌选择指南 - 优质品牌商家
  • rust语言学习笔记Trait(七) IntoIterator(由集合创建迭代器)
  • 2026年移动广告联盟TOP5盘点:APP变现、APP商业化变现、APP广告收益提升、APP广告素材合规、APP想接入广告选择指南 - 优质品牌商家
  • 2026年q2物业托管技术全解析:成都清洁外包/成都物业公司/成都物业外包/攀枝花保洁公司/选型与落地核心推荐 - 优质品牌商家
  • 电动汽车创企Fisker破产后,4000名车主自发组建开源汽车公司延续车辆生命。
  • 给 AI 写一份老厨师的菜谱:从传统文档到 Skill 知识体系
  • 终极指南:使用Play Integrity API Checker保护你的Android应用安全
  • Linux信号机制深度解析:从内核实现到多线程编程实践
  • DeepSeek RAG场景GPU资源黑洞:向量检索+重排序+生成三阶段显存泄漏的48小时定位实录(含perf脚本)
  • [qemu+kvm]: iommu 开关代码分析
  • 百度 Agent 安全中心:构筑企业智能体的安全底座
  • 某消费电子终端上市公司实例:德思特衰减器方案以1/3成本精准复现弱网与WiFi干扰场景
  • 别只当题做!我把CTFshow Web信息搜集题(11-20)变成了真实漏洞挖掘指南
  • 数据架构演进:从数据仓库到湖仓一体与流批融合实战
  • 2026年六大主流AI变声器软件排名推荐!
  • 从STM32F405到AT32F435:手把手教你给AocodaRC飞控换‘芯’并刷入BetaFlight固件
  • 极化激元量子流体:从Bogoliubov色散到引力模拟的精密探测
  • 武汉假发店TOP5评测|专业形象美学指南,揭秘头部信赖之选! - 行业深度观察C
  • 高频电路五大典型故障现象、根因与排查流程
  • 当 DAA 成为常态,如何用“数字摄像头”建设 Agent 可观测性