2016-11-01 2 views
1

컬렉션을 쿼리하고 반환 된 결과를 제한하려면 어떻게해야합니까? 500M 문서의 DB가 있다고 가정하지만 성능상의 이유로 전체 컬렉션을 검색하지 않고 처음 10 개의 검색 만 검색하여 반환하려고합니다.MongoDB 한도 검색 결과

이상적으로 O (m-n) 시간에 m 번째 결과를 통해 n 번째를 반환 할 수 있습니다.

가능하다면 어떤 아이디어가 있습니까?

db.collection.find(<query>).limit(<number>).skip(<number>) 

당신은 Limit the Number of Query Results to Reduce Network Demand

편집에 성능 문제에 대해 자세한 내용을보실 수 있습니다 :

+0

db.collections.find(). skip (n) .limit (x) cf https://docs.mongodb.com/v3.2/reference/method/js-cursor/ – felix

답변

5

당신은 skiplimit을 적용하여 그렇게 할 수

limitskip를 교환 할 수 skip이 항상 첫 번째로 호출됩니다.