

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

# \$1and
<a name="and"></a>

Amazon DocumentDB의 `$and` 연산자는 여러 표현식을 결합하고 단일 조건으로 평가하는 데 사용됩니다. 제공된 모든 표현식이 로 평가`true`되면를 반환하고 `true`그렇지 `false` 않으면를 반환합니다. 이 연산자는 쿼리에 여러 기준을 적용하는 데 유용합니다.

**파라미터**
+ `expression1`: 부울 값으로 평가되는 필수 표현식입니다.
+ `expression2`: 부울 값으로 평가되는 필수 표현식입니다.
+ `...`: 부울 값으로 평가되는 추가 필수 표현식입니다.

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

다음 예제에서는 `$and` 연산자를 사용하여 "사용자" 모음에서 "나이" 필드가 18보다 크고 "상태" 필드가 "활성"인 모든 문서를 찾는 방법을 보여줍니다.

**샘플 문서 생성**

```
db.users.insertMany([
  { name: "John", age: 25, status: "active" },
  { name: "Jane", age: 17, status: "active" },
  { name: "Bob", age: 30, status: "inactive" },
  { name: "Alice", age: 22, status: "active" }
]);
```

**쿼리 예제**

```
db.users.find({
  $and: [
    { age: { $gt: 18 } },
    { status: "active" }
  ]
});
```

**출력**

```
[
  { "_id" : ObjectId("614e3c4b63f5892e7c4e2345"), "name" : "John", "age" : 25, "status" : "active" },
  { "_id" : ObjectId("614e3c4b63f5892e7c4e2347"), "name" : "Alice", "age" : 22, "status" : "active" }
]
```

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

`$and` 명령을 사용하기 위한 코드 예제를 보려면 사용하려는 언어의 탭을 선택합니다.

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

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

async function findActiveUsersOlderThan18() {
  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 users = db.collection('users');

  const activeUsersOlderThan18 = await users.find({
    $and: [
      { age: { $gt: 18 } },
      { status: 'active' }
    ]
  }).toArray();

  console.log(activeUsersOlderThan18);
  await client.close();
}

findActiveUsersOlderThan18();
```

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

```
from pymongo import MongoClient

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

    active_users_older_than_18 = list(users.find({
        '$and': [
            {'age': {'$gt': 18}},
            {'status': 'active'}
        ]
    }))

    print(active_users_older_than_18)
    client.close()

find_active_users_older_than_18()
```

------