关于SQL语句的执行速度问题
同一个查询动作,不同的速度:
select u.name,u.email,u2.name,u2.email,u.department_name from baidu_user u inner join (select * from baidu_user) u2 on u.superior_id = u2.id where u.id in (select id from completed_user); /* Affected rows: 0 已找到记录: 5,446 警告: 0 持续时间 1 query: 0.328 sec. (+ 0.202 sec. network) */
select u.name,u.email,u2.name,u2.email,u.department_name from baidu_user u inner join baidu_user u2 on u.superior_id = u2.id where u.id in (select id from completed_user); /* Affected rows: 0 已找到记录: 5,446 警告: 0 持续时间 1 query: 0.500 sec. (+ 34.772 sec. network) */
明显可以看出,上面的SQL语句要比下面的SQL语句的执行效率要更高。唯一的差别,就第三行的的差别,但是不知道为什么会影响执行速度,所以放上来问一下
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
留给dba说话。我也插一句,是不是临时表有关