关于 LOCATE vs LIKE vs INSTR 性能分析

 

网上很多流传关于Mysql字符串对比的函数性能说法是  INSTR >> LOCATE >> LIKE 字符串,所以今天我自己测一下看看真假。

 

这是在字符串较长的情况下测试的结果  一亿次执行的情况下  like 优于 locate 和  instr ,  instr 和 locate 十分接近。

 

 

 

 

 

这是在字符串较短的情况下测试的结果  一亿次执行的情况下  like 仅仅略微慢于 locate 和  instr ,  instr 和 locate 还是十分接近。

 

 

 

 

所以当普通情况下,被搜索的字符串不长的情况下,locate\instr的性能仅仅比like好一点点,在一亿次执行下只少0.5秒内。

但当被搜索的字符串较长的情况下,like的效率比locate\instr多出一倍!

 

后面我又测了当字符串前匹配的情况下,locate\instr 性能差不多, 比like效率高一点点!

 

posted @ 2019-05-09 21:07  CoderV的进阶笔记  阅读(3511)  评论(0编辑  收藏  举报