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