关于msql的查询索引的一点笔记
索引用来干嘛的,大家自行百度或者谷歌或者买个书看看就明白,跟我们存储的数据结构数组里的下标索引那玩意大概一个意思。就是可以很方便的查询数据。mysql的b+tree算法搜索,对于有建立索引的表mysql会建立一个索引信息表,查询的时候会先走索引。所以速度比较快。
今天遇到的两个问题,一个表中有create_time 字段,为了测试查询性能,我们可以造几百万的数据,对create_time查询,分有索引和没有索引。大家可以试试。
我测试总结到的2点:
1.有索引的时候,如果时间间隔很大,索引几乎失效,所以时间范围要根据业务适当调整;
2.有索引的时候,时间只有上界或者下界,如果使用<=或者>=就不走索引了,但是使用<或者> 是会走索引的。使用between and 也是走索引的。
所以 对于msyql查询优化,一般从索引和查询语句入手。具体尚待生产环境中去深入研究和琢磨。
谢谢。