专栏名称: macrozheng
专注Java技术分享,解析优质开源项目。涵盖SpringBoot、SpringCloud、Docker、K8S等实用技术,作者Github开源项目mall(50K+Star)。
今天看啥  ›  专栏  ›  macrozheng

MySQL留疑问:left join时选on还是where?

macrozheng  · 公众号  ·  · 2024-09-19 10:32
    

文章预览

微服务项目学习: cloud.macrozheng.com 作者:jcpp9527 来源:blog.csdn.net/wqc19920906/article/details/79785424 前天写SQL时本想通过 A left B join on and 后面的条件来使查出的两条记录变成一条,奈何发现还是有两条。 后来发现 join on and 不会过滤结果记录条数,只会根据and后的条件是否显示 B表的记录,A表的记录一定会显示。 不管and 后面的是 A.id=1 还是 B.id=1 ,都显示出A表中所有的记录,并关联显示B中对应A表中id为1的记录或者B表中id为1的记录。 运行sql: SELECT  * FROM  student s   LEFT   JOIN   class  c  ON  s.classId = c.id ORDER   BY  s.id 运行sql: SELECT  * FROM  student s   LEFT   JOIN   class  c   ON  s.classId = c.id    AND  s.name =  '张三' ORDER   BY  s.id 这或许是一个对你有用的开源项目 ,mall项目是一套基于 SpringBoot3 + JDK 17 + Vue 实现的电商系统( Github标星60K ),采用Docker容 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览