

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# \$1mod
<a name="mod-query"></a>

`$mod` 쿼리 연산자는 필드 값을 디바이저로 나눈 나머지가 지정된 문서를 선택합니다. 이는 모듈로 산술 조건을 기반으로 문서를 필터링하는 데 유용합니다.

**파라미터**
+ `divisor`: 나눌 숫자입니다.
+ `remainder`: 예상되는 나머지 값입니다.

## 예제(MongoDB 쉘)
<a name="mod-query-examples"></a>

다음 예제에서는 `$mod` 연산자를 사용하여 수량이 홀수인 모든 주문을 찾는 방법을 보여줍니다.

**샘플 문서 생성**

```
db.orders.insertMany([
  { _id: 1, item: "Widget", quantity: 15 },
  { _id: 2, item: "Gadget", quantity: 20 },
  { _id: 3, item: "Tool", quantity: 7 },
  { _id: 4, item: "Device", quantity: 12 },
  { _id: 5, item: "Part", quantity: 9 }
]);
```

**쿼리 예제**

```
db.orders.find({ quantity: { $mod: [2, 1] } });
```

**출력**

```
{ "_id" : 1, "item" : "Widget", "quantity" : 15 }
{ "_id" : 3, "item" : "Tool", "quantity" : 7 }
{ "_id" : 5, "item" : "Part", "quantity" : 9 }
```

이 쿼리는 수량을 2로 나눈 나머지 수량이 1인 문서를 반환하여 모든 홀수 수량을 효과적으로 선택합니다.

## 코드 예제
<a name="mod-query-code"></a>

`$mod` 쿼리 연산자 사용에 대한 코드 예제를 보려면 사용하려는 언어의 탭을 선택합니다.

------
#### [ Node.js ]

```
const { MongoClient } = require('mongodb');

async function example() {
  const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false');
  const db = client.db('test');
  const collection = db.collection('orders');

  const result = await collection.find({ quantity: { $mod: [2, 1] } }).toArray();

  console.log(JSON.stringify(result, null, 2));
  await client.close();
}

example();
```

------
#### [ Python ]

```
from pymongo import MongoClient

def example():
    client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
    db = client['test']
    collection = db['orders']

    result = list(collection.find({'quantity': {'$mod': [2, 1]}}))

    print(result)
    client.close()

example()
```

------