最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL用limit方式實現(xiàn)分頁的實例方法

 更新時間:2020年01月05日 14:45:32   作者:夢想一步登天  
在本篇文章中小編給大家整理了一篇關(guān)于MySQL用limit方式實現(xiàn)分頁的實例方法,有需要的朋友們可以參考學習下。

一、limit 基本實現(xiàn)方式

一般情況下,客戶端通過傳遞 pageNo(頁碼)、pageSize(每頁條數(shù))兩個參數(shù)去分頁查詢數(shù)據(jù)庫中的數(shù)據(jù),在數(shù)據(jù)量較?。ㄔM百/千級)時使用 MySQL自帶的 limit 來解決這個問題:

收到客戶端{pageNo:1,pagesize:10} 
select * from table limit (pageNo-1) * pageSize, pageSize;

收到客戶端{pageNo:5,pageSize:30} 

select * from table limit (pageNo-1) * pageSize,pageSize;

二、建立主鍵或者唯一索引

在數(shù)據(jù)量較小的時候簡單的使用 limit 進行數(shù)據(jù)分頁在性能上面不會有明顯的緩慢,但是數(shù)據(jù)量達到了 萬級到百萬級sql語句的性能將會影響數(shù)據(jù)的返回。這時需要利用主鍵或者唯一索引進行數(shù)據(jù)分頁;

假設(shè)主鍵或者唯一索引為 good_id 
收到客戶端{pageNo:5,pagesize:10} 
select * from table where good_id > (pageNo-1) * pageSize limit pageSize; 
–返回good_id為40到50之間的數(shù)據(jù)

三、基于數(shù)據(jù)再排序

當需要返回的信息為順序或者倒序時,對上面的語句基于數(shù)據(jù)再排序。order by ASC/DESC 順序或倒序 默認為順序

select * from table where good_id > (pageNo-1)*pageSize order by good_id limit pageSize; 
–返回good_id為40到50之間的數(shù)據(jù),數(shù)據(jù)依據(jù)good_id順序排列

四、分頁最佳方案

每頁顯示10條:
當前 118 120, 125

倒序:
      大   小
      980  970 7 6 6 5 54 43 32

21 19 98   
下一頁:

  select 
    * 
  from 
    tb1 
  where 
    nid < (select nid from (select nid from tb1 where nid < 當前頁最小值 order by nid desc limit 每頁數(shù)據(jù) *【頁碼-當前頁】) A order by A.nid asc limit 1) 
  order by 
    nid desc 
  limit 10;



  select 
    * 
  from 
    tb1 
  where 
    nid < (select nid from (select nid from tb1 where nid < 970 order by nid desc limit 40) A order by A.nid asc limit 1) 
  order by 
    nid desc 
  limit 10;


上一頁:

  select 
    * 
  from 
    tb1 
  where 
    nid < (select nid from (select nid from tb1 where nid > 當前頁最大值 order by nid asc limit 每頁數(shù)據(jù) *【當前頁-頁碼】) A order by A.nid asc limit 1) 
  order by 
    nid desc 
  limit 10;


  select 
    * 
  from 
    tb1 
  where 
    nid < (select nid from (select nid from tb1 where nid > 980 order by nid asc limit 20) A order by A.nid desc limit 1) 
  order by 
    nid desc 
  limit 10;

以上就是本次介紹的關(guān)于MySQL實現(xiàn)分頁的方法的全部內(nèi)容,感謝大家的學習和對腳本之家的支持。

相關(guān)文章

  • MySQL SHOW STATUS語句的使用

    MySQL SHOW STATUS語句的使用

    這篇文章主要介紹了MySQL SHOW STATUS語句的使用,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-12-12
  • mysql利用mysqlbinlog命令恢復誤刪除數(shù)據(jù)的實現(xiàn)

    mysql利用mysqlbinlog命令恢復誤刪除數(shù)據(jù)的實現(xiàn)

    這篇文章主要介紹了mysql利用mysqlbinlog命令恢復誤刪除數(shù)據(jù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • 聽說mysql中的join很慢?是你用的姿勢不對吧

    聽說mysql中的join很慢?是你用的姿勢不對吧

    這篇文章主要介紹了聽說mysql中的join很慢?是你用的姿勢不對吧,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • MySQL中常見關(guān)鍵字的用法總結(jié)

    MySQL中常見關(guān)鍵字的用法總結(jié)

    這篇文章主要為大家詳細介紹了MySQL中常見關(guān)鍵字的用法,例如GROUP BY、ORDER BY和LIMIT,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-09-09
  • mysql5.7.24 解壓版安裝步驟及遇到的問題小結(jié)

    mysql5.7.24 解壓版安裝步驟及遇到的問題小結(jié)

    這篇文章主要介紹了mysql5.7.24 解壓版安裝步驟以及遇到的問題 ,文中給大家提出了解決方案,需要的朋友可以參考下
    2018-11-11
  • RedHat6.5安裝MySQL5.7教程詳解

    RedHat6.5安裝MySQL5.7教程詳解

    這篇文章主要為大家詳細介紹了RedHat6.5下MySQL5.7的安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 基于sqlalchemy對mysql實現(xiàn)增刪改查操作

    基于sqlalchemy對mysql實現(xiàn)增刪改查操作

    這篇文章主要介紹了基于sqlalchemy對mysql實現(xiàn)增刪改查操作,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • MySQL中order?by排序語句的原理解析

    MySQL中order?by排序語句的原理解析

    這篇文章主要介紹了MySQL中order?by排序語句的原理,本文結(jié)合示例代碼給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • MySQL緩存的查詢和清除命令詳細操作指南

    MySQL緩存的查詢和清除命令詳細操作指南

    MySQL緩存機制是提升數(shù)據(jù)庫查詢性能的關(guān)鍵技術(shù),本文深入介紹了MySQL的查詢緩存、表緩存和InnoDB緩沖池等緩存類型,以及它們的查詢和清除命令,需要的朋友可以參考下
    2024-09-09
  • Mysql關(guān)于進程中的死鎖和解除鎖問題

    Mysql關(guān)于進程中的死鎖和解除鎖問題

    Mysql 經(jīng)常會遇到語句或者存儲過程長時間沒有反應,大概率就是掛掉了,或者死鎖了,這篇文章主要介紹了Mysql關(guān)于進程中的死鎖和解除鎖問題,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-07-07

最新評論

招远市| 鄂伦春自治旗| 广灵县| 湘阴县| 澄城县| 安庆市| 叶城县| 固安县| 湛江市| 邵阳县| 武义县| 平果县| 定陶县| 铜鼓县| 义马市| 阳江市| 苍山县| 松溪县| 天门市| 开平市| 绍兴县| 漾濞| 宜兰市| 塔城市| 云南省| 兴仁县| 江门市| 即墨市| 庄河市| 德格县| 五峰| 卢氏县| 稷山县| 永兴县| 襄垣县| 永福县| 治多县| 桃源县| 和田市| 蒙城县| 泾川县|