索引优化案例

1. 单表

     先建表           

       #查询category_id 为1 且comments大于1的情况下,views最多的article_id

    出现了全表扫描,而且出现了Using filesort ,必须优化.

     该案例部分用到了索引, 由于在comment处出现了范围查询,导致后面的views字段索引失效,所以出现了using filesort.

     怎么办?

    删除原来的索引 idx_ccv,建立新索引idx_cv


   

2. 两表

进行左联结查询

    可以看出只有把索引建在右边的表时,type变成了ref,rows也明显减少,左联结的时候把索引建在右表才会有效.

    这是由左联接的特性决定的,left join条件用于确定如何从右表搜索行,左边一定都有.

3 三表


    因此可以得出结论: 保证join语句条件字段被索引,且索引加在(left join加右表,right join 反之);

    

猜你喜欢

转载自blog.csdn.net/u012150590/article/details/79910969