

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

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

Tahap `$match` pipeline di Amazon DocumentDB digunakan untuk memfilter dokumen input hanya ke dokumen yang cocok dengan kriteria kueri yang ditentukan. Ini adalah salah satu tahapan pipa yang paling umum digunakan dalam operasi agregasi. `$match`Tahap ini diterapkan sebelum tahap pipa lainnya, memungkinkan Anda untuk secara efisien mengurangi jumlah dokumen yang perlu diproses oleh tahap selanjutnya.

**Parameter**
+ `query`: Dokumen yang menyatakan kriteria seleksi untuk operasi. Dokumen query menggunakan sintaks yang sama dengan `find()` metode.

## Contoh (MongoDB Shell)
<a name="match-examples"></a>

Contoh berikut menunjukkan penggunaan `$match` panggung untuk memfilter dokumen berdasarkan nilai bidang tertentu.

**Buat dokumen sampel**

```
db.collection.insertMany([
  { _id: 1, name: "John", age: 25, city: "New York" },
  { _id: 2, name: "Jane", age: 30, city: "Los Angeles" },
  { _id: 3, name: "Bob", age: 35, city: "Chicago" },
  { _id: 4, name: "Alice", age: 40, city: "Miami" }
]);
```

**Contoh kueri**

```
db.collection.aggregate([
  { $match: { age: { $gt: 30 } } },
  { $project: { _id: 1, name: 1, city: 1 } }
]);
```

**Keluaran**

```
[
  { "_id": 3, "name": "Bob", "city": "Chicago" },
  { "_id": 4, "name": "Alice", "city": "Miami" }
]
```

`$match`Tahap menyaring dokumen untuk memasukkan hanya yang `age` bidangnya lebih besar dari 30.

## Contoh kode
<a name="match-code"></a>

Untuk melihat contoh kode untuk menggunakan `$match` perintah, pilih tab untuk bahasa yang ingin Anda gunakan:

------
#### [ 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('collection');

  const result = await collection.aggregate([
    { $match: { age: { $gt: 30 } } },
    { $project: { _id: 1, name: 1, city: 1 } }
  ]).toArray();

  console.log(result);
  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['collection']

    result = list(collection.aggregate([
        { '$match': { 'age': { '$gt': 30 } } },
        { '$project': { '_id': 1, 'name': 1, 'city': 1 } }
    ]))

    print(result)
    client.close()

example()
```

------