MySQL 踩坑 order by offset 分页数据重复

123.png

问题解析

从错误的 order by 案例中,使用 order by age 字段正序排列,由于同一个班级的小朋友 age 相同的频率极高,所以这样的排序是不稳定的。

解决方案

如果第一优先级是必须以 age (年纪) 来做为排序条件,那么为了保证分页后排序的稳定性,需要添加一个唯一性字段 id 或其它唯一性字段来做为第二排序条件。这样分页后就不会由于不稳定排序而导致重复数据的出现。

如需转载,请标注来源谢谢: http://lukachen.com/archives/291/

发表新评论