问题: 当我对数据进行排序时,我可能会在结果的底部看到某一行。然后我转到结果的第2页,我在这些结果的顶部看到同一行。我看到我排序的列有多个具有相同列值的行。因此,看起来第一个顺序之后的列的顺序是随机/任意的。
我希望订单始终保持不变,在不同的页面上不重复。
有没有人知道如何实现这一目标?
我想过可能会缓存一个查询的未经过处理的结果,也许我自己会对它进行排序。或者MySQL结果缓存可能会保存所有结果,然后从其缓存中提取分页结果?或者它只是根据总查询,分页和所有保存,所以它只会节省我拉的数量?
感谢您的时间。
更多信息: 我正在提取数据的表格在任何这些测试之间都没有被改变。
问题的一个例子是:
在一个页面上,我搜索具有属性q的主题并按年龄排序。 3名受试者返回:
id attribute age
10 q 20
8 q 23
3 q 23
我在不同的页面上进行相同的搜索:
id attribute age
10 q 20
3 q 23
8 q 23
当年龄相等时,订单可能会改变。
答案 0 :(得分:0)
使用id列作为辅助搜索列(如果它是唯一的)。您的订单将始终保持一致,并且不会为您提供随机排序列表。