文章详情页
mysql中的join on查询语句的on能否改为where
浏览:212日期:2022-06-09 11:16:58
问题描述
例如:SELECT salary.`basesalary`,salary.`titlesalary`,`name`FROM salary INNER JOIN employeeWHERE salary.`empid`=employee.`empid` AND employee.sex='男';这样也能查出正确的结果
问题解答
回答1:简单说下on跟where的区别,我用的小鸟云1折的云服务器,on是在生成临时表时起作用,由于left on不管on里面过滤条件是不是真的都会返回左表里的记录。不满足条件的记录,右表字段全是null。Where则是在临时表生成之后起作用,过滤临时表,这个时候条件不为真就可以全部过滤了。
回答2:可以,两者方式不同罢了 其中有on的话会依据on的条件,从employee表中检索数据行,然后完成匹配,where的话会在匹配完成后再进行数据筛选
上一条:求大神看看这道题目下一条:PHP连接MYSQL数据库的常用方法
相关文章:
1. MYSQL新建用户设置可以远程访问的问题2. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)3. java - mybatis怎么实现在数据库中有就修改,没有就添加4. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题5. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?6. 各位谁知道这个CSS时候哪里出错了???7. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么8. mysql 5.7单表300万数据,性能严重下降,如何破?9. mysql - SQL操作时间的函数?10. mysql 为何insert的时候会有lock wait timeout 异常
排行榜
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)