Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ / /

$limit (집계)

이 페이지의 내용

  • 정의
  • 호환성
  • 구문
  • 행동
  • 예시
$limit

파이프라인의 다음 단계로 전달되는 문서 수를 제한합니다.

다음 환경에서 호스팅되는 배포에 $limit 사용할 수 있습니다.

  • MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스

$limit 단계의 프로토타입 형식은 다음과 같습니다.

{ $limit: <positive 64-bit integer> }

$limit 전달할 최대 문서 수를 지정하는 양의 정수를 사용합니다.

참고

MongoDB 5.0부터 $limit 파이프라인 집계에 64비트 정수 제한이 있습니다. 이 제한을 초과하여 파이프라인에 전달된 값은 잘못된 인수 오류를 반환합니다.

$limit 단계를 다음 중 하나와 함께 사용하는 경우:

$limit 단계로 결과를 전달하기 전에 정렬에 고유 값을 포함하는 필드를 하나 이상 포함해야 합니다.

중복 값이 포함된 필드를 기준으로 정렬하면 특히 컬렉션이 활발하게 쓰기를 수신하는 경우 여러 번 실행할 때 중복 필드에 대해 일관되지 않은 정렬 순서가 반환될 수 있습니다.

정렬 일관성을 보장하는 가장 쉬운 방법은 정렬 쿼리에 _id 필드를 포함하는 것입니다.

각각에 대한 자세한 내용은 다음을 참조하세요:

다음 예를 고려하십시오.

db.article.aggregate([
{ $limit : 5 }
]);

이 연산은 파이프라인에서 전달된 처음 5개의 문서만 반환합니다. $limit는 전달되는 문서의 내용에는 영향을 주지 않습니다.

참고

$sort$limit 앞에 오고 문서 수를 수정하는 중간 단계가 없는 경우, 옵티마이저는 $limit$sort로 병합할 수 있습니다. 이렇게 하면 $sort 연산을 진행하는 과정에서 상위 n개의 결과만 유지할 수 있고(여기서 n은 지정된 제한값 의미), MongoDB는 메모리에 n개의 항목만 저장하면 됩니다. 이 최적화는 allowDiskUsetrue이고 n 항목이 집계 메모리 제한을 초과하는 경우에도 여전히 적용됩니다.

다음도 참조하세요.

돌아가기

$indexStats

이 페이지의 내용