根据时间进行降序查询,(其中时间都是一样的),这时候分页,会出现数据重复,其中表中数据肯定是不重复的。
根据时间进行降序查询,(其中时间都是一样的),这时候分页,会出现数据重复,其中表中数据肯定是不重复的。
|
zcmxw1Aug 17, 2019 via Android
1
sql 语句问题吧?
|
|
wa8nAug 17, 2019 via iPhone
2
limit,offset 没算对?
|
|
3
跟排序没关系,查询本身的问题
|
|
4
当你点击下一页的时候,这个时候有新数据进来了。
|
|
twocold0451Aug 17, 2019 via Android
5
再加个其他排序条件,Oracle 遇到过这个问题
|
|
xuanbgAug 17, 2019
6
4 楼正解,需要额外的条件才能避免这个问题
|
|
7
order by 应该使用多个字段,确认唯一性
|
|
dgjungleAug 17, 2019
8
group by 也可以保证唯一性呀
|
|
lxy42Aug 17, 2019 via Android
9
当排序字段有重复值时,顺序是不确定的。
|
|
cyssxtAug 17, 2019 via iPhone
10
这个肯定是 sql 的问题,查一下关联表 join 之类的逻辑
|
|
xujifAug 17, 2019 via iPhone
11
信息流应用很少用传统的 page 分页,用递增 id 排序。
|
|
hhyvs111Aug 17, 2019
12
可能这个时候被删了一些数据,然后分页计算失误
|
|
13
ORDER BY `created_at` ASC,`id` ASC
|
|
14
既然时间一样,那对时间排序,就等于没有排序,顺序就可以认为是随机的,分页当然不能正确了
应该有一个兜底的排序字段,一般都是用唯一字段,例如自增 id |
|
mmdsunAug 17, 2019 via Android
15
MySQL oder by 与 limit 合用会出现这个问题。
|
|
waytodelayAug 17, 2019 via Android
16
mysql 遇到和你一模一样的问题,排序字段只有时间而且时间有超过分页参数的重复,分页就出问题了,这时加个 id 排序就不会出问题了
|