GBase 8a
其他
文章
GBase 8a关于order limit 翻页有重复值问题的原因
发表于2025-01-11 12:25:2447次浏览1个评论
1、在做order limit 或者单纯limit翻页时,第二页有和第一页重复的数据的原因。只有在唯一键参与排序时,才能完全确保数据的唯一性。
从语法上讲,limit 本身并没有严格的效果,第二次查询时的结果集,不能保证和第一次查询的结果集完全顺序相同。
如果你用了order, 但排序的列有重复值,也不能保证。
如果order的列是唯一的,则能保证翻页后是不会和上一页重复,但这个是业务数据自己保证的。
2、这个现象与多节点集群本身的特性有关,哪个节点先出结果,order by 相同的值排在前面。
所以解决该问题需要避免有order by 相同的值。
3、表数据增加唯一值
V95版本使用自增列能避免分页重复值问题
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526