mysql中排序再分頁 數據重複

使用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會放棄索引作全表掃描。索引

相關文章
相關標籤/搜索