AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.

$limit (집계 단계)

$limit

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

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

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

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

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

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

참고

$limit 파이프라인 집계에는 64비트 정수 제한이 있습니다. MongoDB는 값이 이 제한을 초과하면 유효하지 않은 인수 오류를 반환합니다.

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

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

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

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

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

이 페이지의 예시는 sample_mflix 데이터 세트의 데이터를 사용합니다. 이 데이터 세트를 자체 관리형 MongoDB 배포서버에 로드하는 방법에 대한 자세한 내용은 샘플 데이터세트 로드를 참조하세요. 샘플 데이터베이스를 수정한 경우, 이 페이지의 예시를 실행하려면 데이터베이스를 제거하고 다시 생성해야 할 수 있습니다.

다음 예를 고려하십시오.

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

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

참고

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

전체 예시에서 $limit를 사용하는 방법 학습을 하려면 집계 파이프라인에서 데이터 필터 튜토리얼을 참조하세요.

스킬 배지 획득

무료로 '데이터 변환의 기초'를 마스터하세요!

자세한 내용을 알아보세요.

이 페이지 평가하기