网上不少流传关于Mysql字符串对比的函数性能说法是 INSTR >> LOCATE >> LIKE 字符串,因此今天我本身测一下看看真假。sql
这是在字符串较长的状况下测试的结果 一亿次执行的状况下 like 优于 locate 和 instr , instr 和 locate 十分接近。函数
这是在字符串较短的状况下测试的结果 一亿次执行的状况下 like 仅仅略微慢于 locate 和 instr , instr 和 locate 仍是十分接近。性能
因此当普通状况下,被搜索的字符串不长的状况下,locate\instr的性能仅仅比like好一点点,在一亿次执行下只少0.5秒内。测试
但当被搜索的字符串较长的状况下,like的效率比locate\instr多出一倍!blog
后面我又测了当字符串前匹配的状况下,locate\instr 性能差很少, 比like效率高一点点!字符串