这个应该是设计上的问题吧 ,你的展示是必须要用到从一开始到当前的所有数据吗?
如果不是的话创建一张 实时表,创建一张历史数据表,实时表只保存当前的数据,这样查询效率就会高了。 

解决方案 »

  1.   

    楼上的分析在理,可以考虑一定时间将实时表的数据移到历史表中,这样实时表的数据量就很小,查询效率就很快。千万级的数据,楼主可以考虑俺时间分区。
      

  2.   

    可以建两个表,一个表只存最近7天(根据需求)的数据用于实时显示,另一个历史表,结构和前一个表一样,然后写一个job,每天把大于7天的数据insert到历史表,然后delete掉大于7天的数据在当前表就行了.这是最简单的方式了.