mysql 的查询条件放在 join on 和 Where 的区别:

查询条件放在 ON 后面:

属于"连接条件"。在连接时进行筛选,不符合条件的右表记录会被当作不存在,但左表记录依然保留。

查询条件放在 WHERE 后面:

属于"结果过滤"。连接完成后,对整个结果集进行大扫除,不符合条件的行直接整行删掉。

当你在使用 LEFT JOIN 却发现查出来的数量比预期少时,应该检查 WHERE 子句里是不是引用了右表的字段。

相关推荐
卤炖阑尾炎2 小时前
MySQL 全量、增量备份与恢复实战指南
mysql·adb
zhangren024682 小时前
Laravel7.x新特性全面解析
数据库·mysql·adb·php
猿小喵2 小时前
MySQL数据库参数解读-第一篇
数据库·mysql·性能优化
掌勺者3 小时前
MySQL 事务简介
数据库·mysql
小码吃趴菜3 小时前
服务器预约系统linux小项目-第四节课
数据库·sql·mysql
Roc-xb3 小时前
Windows MySQL 密码忘记了如何重置密码?
windows·mysql
七七powerful3 小时前
MySQL 8.0 性能优化利器:Percona Toolkit 实战指南
数据库·mysql·性能优化
成为大佬先秃头12 小时前
数据库连接池:Druid
数据库·mysql·druid
wregjru16 小时前
【mysql】2.数据表操作
数据库·mysql