반환된 결과 건너뛰기
개요
읽기 작업을 위해 반환된 문서 목록의 시작 부분에서 문서를 생략하려면 skip
를 사용합니다. 정렬과 정렬 을 결합하여 주어진 쿼리 에 대한 상위(내림차순) 또는 하위(오름차순) 결과를 생략할 수 skip
있습니다. 정렬이 없는 경우반환되는 문서 의 순서가 보장되지 않으므로 sort
을 사용하지 않고 skip
를 사용하면 임의의 문서가 생략됩니다.
skip
값이 쿼리에 대해 일치하는 문서 수를 초과하는 경우 해당 쿼리는 문서를 반환하지 않습니다.
샘플 문서
이 가이드의 예시를 따라 하려면 다음 코드 스니펫을 사용하여 과일을 설명하는 문서를 myDB.fruits
컬렉션에 삽입하세요.
const myDB = client.db("myDB"); const myColl = myDB.collection("fruits"); await myColl.insertMany([ { "_id": 1, "name": "apples", "qty": 5, "rating": 3 }, { "_id": 2, "name": "bananas", "qty": 7, "rating": 1 }, { "_id": 3, "name": "oranges", "qty": 6, "rating": 2 }, { "_id": 4, "name": "avocados", "qty": 3, "rating": 5 }, ]);
참고
쿼리 작업은 일치하는 문서가 포함된 커서에 대한 레퍼런스를 반환할 수 있습니다. 커서에 저장된 데이터를 검사하는 방법을 알아보려면 커서 기본 사항 페이지를 참조하세요.
예시
다음 예시에서는 모든 문서와 일치하는 필터를 사용하여 컬렉션을 쿼리하고 sort
및 skip
명령을 쿼리 옵션으로 지정하는 옵션을 전달합니다. 정렬 옵션은 rating
값이 더 높은 과일 문서가 등급이 낮은 과일 문서보다 먼저 반환되도록 지정합니다. 건너뛰기 옵션은 처음 2개의 문서가 결과에서 생략되도록 지정합니다.
// define an empty query document const query = {}; const options = { // sort in descending (-1) order by rating sort : { rating: -1 }, // omit the first two documents skip : 2, } const cursor = myColl.find(query, options); for await (const doc of cursor) { console.dir(doc); }
쿼리 가 첫 번째 2
문서를 건너뛰도록 지정했으므로 위의 코드 스니펫은 세 번째와 네 번째로 높은 등급의 문서를 출력합니다.
{ "_id": 3, "name": "oranges", "qty": 6, "rating": 2 } { "_id": 2, "name": "bananas", "qty": 7, "rating": 1 }
sort
및 skip
옵션은 find
메서드에 연결된 메서드로 지정할 수도 있습니다. 다음 두 명령은 동일합니다.
myColl.find(query, { sort: { rating: -1}, skip: 2}); myColl.find(query).sort({rating: -1}).skip(2);