正如你们可能知道的那样,在MySQL中使用LIMIT关键字并不排除它读取前面的记录。如何使用PHP和MySQL高效分页大型数据集?
例如:
SELECT * FROM my_table LIMIT 10000, 20;
意思是,MySQL仍然会读取第一个10000条记录,并产生20我们是前后扔掉。
因此,当分页大型数据集时,高页数意味着很长的加载时间。
有谁知道任何现有的分页类/技术/方法,可以更有效的方式分页大型数据集,即不依赖于LIMIT MySQL关键字吗?
在PHP中如果可能的话,那是在我公司选择的武器。
干杯。
如果您的数据集不太可能发生变化,您可以计算背景中每个元素的页面索引,然后只在索引字段中选择分页。可能发生的情况是,偶尔你偶尔会在页面上出现n + 1个元素。 – Zed 2009-09-01 11:39:15
http://stackoverflow.com/questions/1243952/how-can-i-speed-up-a-mysql-query-with-a-large-offset-in-the-limit-clause – Sampson 2009-09-01 11:39:48