关于 LOCATE vs LIKE vs INSTR 性能分析
Posted valarchie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 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效率高一点点!
以上是关于关于 LOCATE vs LIKE vs INSTR 性能分析的主要内容,如果未能解决你的问题,请参考以下文章
实体框架EF.Functions.Like vs string.Contains
实体框架 EF.Functions.Like vs string.Contains
MySQL date_format() 函数 vs SQL Like 运算符
读取 csv 函数以在 python2 和 python3 中工作(unicode -vs bytes-like object)