【发布时间】:2010-03-16 01:15:11
【问题描述】:
我有一个可搜索和可排序的数据表,但可能会产生成百上千的广泛搜索结果。假设用户搜索“foo”并按价格降序对 foo 进行排序,我想显示一个快速跳转选择菜单,如下所示:
<option value="1">Page 1 ($25,000,000 - $1,625,000)</option>
<option value="2">Page 2 ($1,600,000 - $1,095,000)</option>
<option value="3">Page 3 ($1,095,000 - $815,000)</option>
<option value="4">Page 4 ($799,900 - $699,000)</option>
...
是否有直接从数据库查询此信息的有效方法?我一直在抓取所有匹配的记录并使用 PHP 计算每个页面的最小值和最大值,这似乎效率低下并且可能导致缩放问题。
我能够想出的唯一可能的技术是某种计算变量的方法,该变量会增加每 X 条记录(X 条记录到一个页面),按此进行分组,并为每个页面分组选择 MIN/MAX ...不幸的是,我无法想出一种方法来生成该变量。
【问题讨论】:
标签: php sql mysql pagination