使用和时,mysql stange较慢

时间:2015-04-08 15:39:14

标签: mysql performance where sql-like

我有3个表,我运行一个带有连接的查询,每个表有三个“喜欢”的表 如果我在where条件中添加“和”,查询会变慢!

例如

 select * from A inner join B ON (...) inner join C ON (...)
 where (A.a LIKE '%...%' OR B.a LIKE '%...%' OR C.a LIKE '%...%')

结果为0.0021秒

 select * from A inner join B ON (...) inner join C ON (...)
 where A.type=2 AND (A.a LIKE '%...%' OR B.a LIKE '%...%' OR C.a LIKE %...%')

结果为0.0048秒

我预计“AND A.type = 2”会削减最多的记录然后LIKE(LIKE%...%更耗时而不是A.type = 2) 因此,在“条件”的情况下,“LIKE”的工作要少得多。

所以我预计第二个例子应该运行得更快但事实上更慢

为什么会这样?

0 个答案:

没有答案