a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數(shù)據(jù)庫 > MongoDB > 正文

MongoDB 使用Skip和limit分頁

2020-10-29 18:53:01
字體:
來源:轉載
供稿:網友

使用Skip和limit可以如下做數(shù)據(jù)分頁:

Code:

   page1 = db.things.find().limit(20)   page2 = db.things.find().skip(20).limit(20)   page3 = db.things.find().skip(40).limit(20) 

  備注:可用于分頁,limit是pageSize,skip是第n-1頁*pageSize (n-1表示幾  第1,2...頁)      skip表示跳過  多少條數(shù)據(jù),   聚合管道的優(yōu)化
     1.$sort  +  $skip  +  $limit順序優(yōu)化

    如果在執(zhí)行管道聚合時,如果$sort、$skip、$limit依次出現(xiàn)的話,例如:

    { $sort: { age : -1 } },    { $skip: 10 },    { $limit: 5 }

    那么實際執(zhí)行的順序為:

{ $sort: { age : -1 } },    { $limit: 15 },    { $skip: 10 }

    $limit會提前到$skip前面去執(zhí)行。

    此時$limit = 優(yōu)化前$skip+優(yōu)化前$limit

    這樣做的好處有兩個:

    1.在經過$limit管道后,管道內的文檔數(shù)量個數(shù)會“提前”減小,這樣會節(jié)省內存,提高內存利用效率。

    2.$limit提前后,$sort緊鄰$limit這樣的話,當進行$sort的時候當?shù)玫角啊?limit”個文檔的時候就會停止。

    當數(shù)據(jù)量很小時,這樣做分頁完全沒有問題。但是當數(shù)據(jù)量很大時,skip操作會變的很慢,應該避免使用。  

(不止是mongoDb會這樣,大部分數(shù)據(jù)庫都是。)可以通過改變查詢文檔的規(guī)則來達到分頁效果,避免使用skip來跳過大量的數(shù)據(jù)。

(通過計算,得到下次查詢應該從什么地方開始)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 亚洲91精品| 久久久久久久久久久九 | 久久伊人免费视频 | 在线免费av观看 | 一区二区三区观看视频 | 一级黄色片子免费看 | 黄网址在线观看 | 狠狠躁夜夜躁人人爽天天天天97 | 久久久99精品免费观看 | 中文字幕本久久精品一区 | 天天综合天天色 | 2019精品手机国产品在线 | 黄在线免费观看 | 蜜桃一本色道久久综合亚洲精品冫 | 五月激情六月天 | 久久精精品 | 国产精品视频 | 中文字幕在线观看免费视频 | 国产精品一区二区在线看 | 黄色高清网站 | 亚洲成人精品 | 国产精品亚洲一区 | 免费超碰在线观看 | 国产精品久久一区二区三区 | 亚洲一区二区三区欧美 | 久久国产精品免费一区二区三区 | 国产精品视频一区二区免费不卡 | 青草青草视频2免费观看 | 日本一区二区视频在线观看 | 男人的天堂一级片 | 视频在线一区 | 午夜视频在线播放 | 亚洲91在线 | 狠狠久 | 欧美视频中文字幕 | 99久久日韩精品视频免费在线观看 | 久久国产精品99久久久久久老狼 | 亚洲欧美精品 | 免费大片在线观看网站 | 午夜黄色影院 | 一区二区三区久久 |