mysql中where子句的执行顺序/优化原则是什么?下面这个语句执行时间怎么解释?

MySql 码拜 9年前 (2016-02-07) 969次浏览
select id from test where id = 0 ;
/* Affected rows: 0  已找到记录: 0  警告: 0  持续时间 1 query: 0.032 sec. */
select id from test where id = 0 and sleep(5);
/* Affected rows: 0  已找到记录: 0  警告: 0  持续时间 1 query: 0.031 sec. */
select id from test where id = 0 and benchmark(10000000,md5(123));
/* Affected rows: 0  已找到记录: 0  警告: 0  持续时间 1 query: 2.688 sec. */

从执行时间上分析,第二个sql语句没有执行sleep,第三个sql语句执行了benchmark函数,为什么会这样?
MySQL是怎么样优化的?

解决方案

40

看一下 explain select …

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明mysql中where子句的执行顺序/优化原则是什么?下面这个语句执行时间怎么解释?
喜欢 (0)
[1034331897@qq.com]
分享 (0)