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

커서.min() (mongosh 메서드)

cursor.min()

중요

Mongo쉬 방법

이 페이지에서는 mongosh 메서드를 설명합니다. 이는 Node.js와 같은 언어별 운전자 에 대한 설명서가 아닙니다.

MongoDB API 드라이버의 경우 언어별 MongoDB 드라이버 설명서를 참조하세요.

find()의 결과를 제한하기 위해 특정 인덱스 에 대한 포괄적 하한을 지정합니다. min()는 복합 키 인덱스에 하한을 지정하는 방법을 제공합니다.

min() 메서드에는 다음과 같은 매개변수가 있습니다:

Parameter
유형
설명

indexBounds

문서

인덱스 키의 포괄적 하한값입니다.

indexBounds 매개변수의 프로토타입 형식은 다음과 같습니다.

{ field1: <min value>, field2: <min value2>, fieldN:<min valueN> }

참고

인덱스 사용하기

max() 메서드와 함께 인덱스를 사용하려면 find() 쿼리가 _id 필드의 동등 조건인 경우를 제외하고hint()메서드를 사용하여 사용하려는 인덱스를 지정해야 합니다.

min()는 주로 mongos 프로세스 지원 위해 존재합니다.

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

  • MongoDB Atlas: cloud 에서의 MongoDB 배포를 위한 완전 managed 서비스

참고

이 명령은 모든 MongoDB Atlas 클러스터에서 지원됩니다. 모든 명령에 대한 Atlas 지원 에 대한 자세한 내용은 지원되지 않는 명령을 참조하세요.

min()는 필드 에 대한 인덱스 필요하고 쿼리 이 인덱스 사용하도록 강제하므로, 가능하면 쿼리 에 $gte 연산자 선호할 수 있습니다. 다음 예시 살펴보겠습니다.

db.products.find( { _id: { $in: [ 6, 7 ] } } ).min( { price: Decimal128("1.39") } ).hint( { price: 1 } )

이 쿼리는 _id 의 인덱스가 더 나을 수 있더라도 price 필드의 인덱스를 사용합니다.

min()를 max()과 함께 사용하여 범위 지정하는 경우:

  • min() 및 max()에 지정된 인덱스 바운드 모두 동일한 인덱스 의 키를 참조해야 합니다.

  • max()로 지정된 경계는 min()로 지정된 경계보다 커야 합니다.

min() 및 max() 메서드는 시스템이 일반적인 쿼리 계획을 피해야 함을 나타냅니다. 이들은 인덱스 바운드 min() 및 max()에 주어진 값으로 명시적으로 지정되는 인덱스 스캔을 구성합니다.

경고

두 경계 중 하나를 지정하지 않으면 쿼리 계획은 한 쪽이 제한되지 않은 인덱스 스캔이 됩니다. 이렇게 하면 연산자를 모두 포함하지 않는 쿼리 또는 두 연산자를 모두 사용하여 인덱스 스캔을 보다 엄격하게 제한하는 쿼리에 비해 성능이 저하될 수 있습니다.

find() 쿼리 _id 필드 { _id: <value> }의 동일성 조건이 아닌 한,min()를 실행 하려면 hint() 메서드를 사용하여 인덱스 명시적으로 지정해야 합니다.

아래 예시에서는 다음 문서를 포함하는 products 라는 이름의 샘플 컬렉션 을 만듭니다.

db.products.insertMany([
{ "_id" : 1, "item" : "apple", "type" : "honey crisp", "price" : Decimal128("1.99") },
{ "_id" : 2, "item" : "apple", "type" : "fuji", "price" : Decimal128("1.99") },
{ "_id" : 3, "item" : "apple", "type" : "jonagold", "price" : Decimal128("1.29") },
{ "_id" : 4, "item" : "apple", "type" : "jonathan", "price" : Decimal128("1.29") },
{ "_id" : 5, "item" : "apple", "type" : "mcintosh", "price" : Decimal128("1.29") },
{ "_id" : 6, "item" : "apple", "type" : "cortland", "price" : Decimal128("1.29") },
{ "_id" : 7, "item" : "orange", "type" : "cara cara", "price" : Decimal128("2.99") },
{ "_id" : 9, "item" : "orange", "type" : "satsuma", "price" : Decimal128("1.99") },
{ "_id" : 8, "item" : "orange", "type" : "valencia", "price" : Decimal128("0.99") },
{ "_id" : 10, "item" : "orange", "type" : "navel", "price" : Decimal128("1.39") }
])

컬렉션에 다음 인덱스를 만듭니다.

db.products.createIndexes( [
{ "item" : 1, "type" : 1 },
{ "item" : 1, "type" : -1 },
{ "price" : 1 }
] )
  • Using the ordering of the { item: 1, type: 1 } index, min() limits the query to the documents that are at or above the index key bound of item equal to apple and type equal to jonagold, as in the following:

    db.products.find().min( { item: 'apple', type: 'jonagold' } ).hint( { item: 1, type: 1 } )

    이 쿼리는 다음 문서를 반환합니다.

    { "_id" : 3, "item" : "apple", "type" : "jonagold", "price" : Decimal128("1.29") }
    { "_id" : 4, "item" : "apple", "type" : "jonathan", "price" : Decimal128("1.29") }
    { "_id" : 5, "item" : "apple", "type" : "mcintosh", "price" : Decimal128("1.29") }
    { "_id" : 7, "item" : "orange", "type" : "cara cara", "price" : Decimal128("2.99") }
    { "_id" : 10, "item" : "orange", "type" : "navel", "price" : Decimal128("1.39") }
    { "_id" : 9, "item" : "orange", "type" : "satsuma", "price" : Decimal128("1.99") }
    { "_id" : 8, "item" : "orange", "type" : "valencia", "price" : Decimal128("0.99") }
  • 인덱스 { price: 1 }의 순서를 사용하여min()는 1.39와 동일한 price의 인덱스 키 바운드 이상에 있는 문서로 쿼리 제한하고 max()는 다음과 같은 문서로 쿼리 제한합니다. price의 인덱스 키 바운드는 1.99과 동일합니다.

    참고

    max()가 지정한 경계는 min()이 지정한 경계보다 커야 합니다.

    db.products.find().min( { price: Decimal128("1.39") } ).max( { price: Decimal128("1.99") } ).hint( { price: 1 } )

    이 쿼리는 다음 문서를 반환합니다.

    { "_id" : 10, "item" : "orange", "type" : "navel", "price" : Decimal128("1.39") }
이 페이지 평가하기

이 페이지의 내용