sql语句:select * from  `looktime` where lookclassi='9' and looktime between '1519228800' and '1521647999'这个是查询某个字段下的一个月内的时间段,这样查询就会比直接查询的要慢很多。
这个是查询一个月内的时间段,相比图1快很多
相比之下,图2 的数据比 图1 的还打,为什么图1会比图2慢。图1的查询又一定要,有什么sql可以优化,查询速度加快的,提升速度的,希望大神们可以解答下。万分感谢。

解决方案 »

  1.   

    looktime建索引了吧?
      

  2.   

    看下表结构
    show create  table `looktime` ;
      

  3.   

    应该是索引问题。看看lookclassi字段下面可有null,是否有联合索引
      

  4.   


    两个字段都建立了索引了,如果单独查询lookclassi,用时也是和图2一样
      

  5.   


    都建立了的
    looktime字段的索引区分度更大,放在where条件后更好
      

  6.   


    都建立了的
    looktime字段的索引区分度更大,放在where条件后更好不行,还是一样的时间