$match - Amazon DocumentDB

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

$match

La etapa de $match canalización de Amazon DocumentDB se utiliza para filtrar los documentos de entrada y ver solo aquellos que coincidan con los criterios de consulta especificados. Es una de las etapas de canalización más utilizadas en las operaciones de agregación. La $match etapa se aplica antes que cualquier otra fase de la canalización, lo que permite reducir de manera eficiente la cantidad de documentos que deben procesarse en las etapas posteriores.

Parámetros

  • query: documento que expresa los criterios de selección de la operación. El documento de consulta utiliza la misma sintaxis que el find() método.

Ejemplo (MongoDB Shell)

El siguiente ejemplo demuestra el uso de la $match etapa para filtrar documentos en función de un valor de campo específico.

Cree documentos de muestra

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" } ]);

Ejemplo de consulta

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

Salida

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

La $match etapa filtra los documentos para incluir solo aquellos en los que el age campo es superior a 30.

Ejemplos de código

Para ver un ejemplo de código para usar el $match comando, elija la pestaña correspondiente al idioma que desee usar:

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()