Mysql-left join on后接and,和where的区别

一、left join on 中的 and 

当and和left join on结合,and语句并不会过滤掉行数。行数的多少取决于主表的行数,副表只是补充显示数据,没有的就显示空,加上where才会根据条件过滤掉行数。

1.对左表过滤

and的语句对左表过滤,无论条件真假,左表的数据依旧全部返回,left join的原则决定的

 

2.对右表过滤

and语句对右表过滤,左表的数据依旧全部返回

1
2
3
select * from A left join B
on A.id = B.id  and B.name='FRDS'
where dfcs is null

  

posted @   南方的墙  阅读(148)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· DeepSeek本地性能调优
· 一文掌握DeepSeek本地部署+Page Assist浏览器插件+C#接口调用+局域网访问!全攻略
点击右上角即可分享
微信分享提示