今天群里有人说30W的数据查询慢,每次大概要0.5秒,1个页面查询10次就是5秒,很慢。
一般方法是添加索引。
于是本地测试
select * from tb LIMIT 225000,10;
受影响的行: 0
时间: 0.163s
但看来的确是比较慢的。
1个页面有10次查询,那么就要2秒左右。
有2种解决方案:
1、select *把星号改成需要的字段,经测试,如果字段越多或字段的内容越多,那么查询速度是翻倍增长的。
或者可以把其他的字段单独放到1张表中,不要放在一起,导致单个表内容非常大,导致查询慢。
2、根据需求分析,正常用户只会看前几个页面内容,最多100页就很不错了,所以 100页*100条=1W条。也就是说用户只需要1W条信息。
可以优化limit值,limit 10000,10速度是很快的。