使用MySQL的limit进行分页时,例如 select * from table_1 where 1=1 limit m,nmysql
这样后面的页可能会出现重复数据,这时能够经过加入order by 子句来解决这种状况, select * from table_1 where 1=1 order by field_1 limit m,nsql
可是这里须要特别注意,若是field_1字段有相同值的状况下,后面的页仍是会出现重复数据,这时能够加入第二个排序字段(值惟一),能够选主键id,.net
对应的sql语句是select * from table_1 where 1=1 order by field_1 , id limit m,n排序
可是最好保证field_1在表中的值是惟一的,这样就能够少写一个排序字段,增长查询效率,由于在只有一个排序字段的状况下,mysql会使用索引,若是是有多个排序字段的话,mysql会放弃索引作全表扫描。索引