

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

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

Amazon DocumentDB의 `$push` 연산자는 문서의 배열 필드에 항목을 추가하는 데 사용됩니다. 이 연산자는 전체 배열을 덮어쓰지 않고 기존 배열에 새 데이터를 추가해야 하는 경우에 특히 유용합니다.

**파라미터**
+ `field`: 새 요소를 추가해야 하는 배열 필드의 이름입니다.
+ `value`: 배열에 추가할 값입니다.
+ `position`: (선택 사항) 새 요소를 추가해야 하는 배열의 위치를 지정하는 한정자입니다. 지원되는 한정자는 `$` (배열 끝에 추가) 및 `$[]` (배열 끝에 추가, 배열 필터 무시)입니다.

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

다음 예제에서는 `$push` 연산자를 사용하여 문서의 배열 필드에 새 요소를 추가하는 방법을 보여줍니다.

**샘플 문서 생성**

```
db.users.insert([
  { _id: 1, name: "John Doe", hobbies: ["reading", "swimming"] },
  { _id: 2, name: "Jane Smith", hobbies: ["gardening", "cooking"] }
])
```

**쿼리 예제**

```
db.users.updateOne(
  { _id: 1 },
  { $push: { hobbies: "hiking" } }
)
```

**출력**

```
{
  "acknowledged" : true,
  "matchedCount" : 1,
  "modifiedCount" : 1
}
```

업데이트를 실행한 후의 문서에 `hobbies` 배열`_id: 1`이 로 업데이트됩니다`[&quot;reading&quot;, &quot;swimming&quot;, &quot;hiking&quot;]`.

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

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

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

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

async function updateDocument() {
  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('users');

  const result = await collection.updateOne(
    { _id: 1 },
    { $push: { hobbies: "hiking" } }
  );

  console.log(result);
  client.close();
}

updateDocument();
```

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

```
from pymongo import MongoClient

def update_document():
    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['users']

    result = collection.update_one(
        {'_id': 1},
        {'$push': {'hobbies': 'hiking'}}
    )

    print(result.raw_result)
    client.close()

update_document()
```

------