recherche

Maison  >  Questions et réponses  >  le corps du texte

mongoDB有没有快速翻页的方法?

翻页是采用limit 加上find 第一页的最后一条的_id 来取出第二页的内容

但是就算把索引都载入内存后 翻过两千万文档后每次翻页都耗时十秒以上

请问还有什么翻页快速的方法么

拜谢 感激不尽

漂亮男人漂亮男人2757 Il y a quelques jours694

répondre à tous(1)je répondrai

  • 世界只因有你

    世界只因有你2017-05-02 09:19:50

    Obtenez d'abord le premier identifiant de la page actuelle, puis utilisez ce qui suit pour obtenir toutes les données de la page suivante :

    db.collection.find({_id: {$gt: current_id}}).
                  skip(page_size).
                  limit(page_size).
                  sort({_id: 1});

    J'ai plus de 6 millions de données et c'est très rapide d'utiliser cette méthode.
    Si c'est votre cas et que cela prend encore plus de dix secondes, il se peut que vos conditions de requête ne soient pas indexées.


    Utilisez skip plus limit pour tourner les pages

    répondre
    0
  • Annulerrépondre