zoukankan      html  css  js  c++  java
  • Order by排序后分页limit取值出现重复显示问题

    一、出现问题的原因:

         有关数据库order by排序不唯一,导致分页出现重复数据问题。

    数据库order by排序不唯一,会导致最终的数据排序是不是稳定的,表现出来的结果,就是分页时会重复显示; 

     

    二、解决方案:

    建议在 order by 最后,增加 PK列 或  ROWID

    单单是增加索引缺失不能解决问题,但是增加唯一性索引就行了,PK列 或者 ROWID也能确保唯一,结论是只有能保证order by排序唯一,才会导致结果不重复



    原因分析:

    当取出的数据排序字段的值是一样的时候,MySQL在返回数据时,返回数据顺序不固定,我们取前10个数据的时候,数据库返回数据的顺序,与我们取前20个数据时,数据库返回数据的顺序是完全不同的,于是它生成的limit伪列编号就完全不一样,就导致了显示重复值错误。

     见多识广总能让人耳目一新

  • 相关阅读:
    常见问题
    查询
    多对多关系
    prototype & __proto__
    new operator
    用户
    express.Router
    Express 应用生成器
    LeanCloud
    npm常用命令
  • 原文地址:https://www.cnblogs.com/afeige/p/12470814.html
Copyright © 2011-2022 走看看