MongoDB — ограничить результаты запроса

MongoDB — ограничить результаты запроса

В MongoDB вы можете использовать метод limit(), чтобы указать максимальное количество документов для возврата курсором.

Когда вы запрашиваете коллекцию, используя метод db.collection.find(), вы можете добавить limit(), чтобы указать лимит на число запросов.

Например:

db.artists.find( { albums: { $exists: false }} ).limit(3)

В результате вы получите список максимум из трех строк:

{"_id" : ObjectId("5780fbf458ef8c6b3ffb0149"), "artistname" : "The Tea Party"}
{"_id" : ObjectId("5781c9af68ef8c6b3ffb014a"), "artistname" : "Jorn Lande"}
{"_id" : ObjectId("5781c5re48ef8c6b3ffb014a"), "artistname" : "AC/DC"}

В нашем запросе мы используем оператор $exists для проверки существования поля. В этом случае мы исключаем тех исполнителей, которые имеют поле альбома в документе.

Это можно легко переключить на {$exists: true}, чтобы включить только тех исполнителей с полем альбомов.

Метод skip()

Вы можете использовать метод skip(), чтобы пропустить несколько документов внутри курсора. Другими словами, вы можете контролировать, с какой позиции MongoDB начинает возвращать результаты.

db.artists.find( { albums: { $exists: false }} ).limit(3).skip(1)

В результате выполнения этой команды, MongoDB опустит первый результат и выдаст следующие результаты.

Обратите внимание, что skip() может использоваться для любого запроса (не только в паре с limit()).

Оставьте первый комментарий

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*