$limit - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

$limit

L'$limitopérateur dans Amazon DocumentDB est utilisé pour limiter le nombre de documents renvoyés par une requête. Il est similaire à l'$limitopérateur MongoDB, mais son utilisation avec Amazon DocumentDB comporte certaines considérations spécifiques.

Dans Amazon DocumentDB, l'$limitopérateur est utile pour la pagination, lorsque vous souhaitez récupérer un sous-ensemble du total des documents correspondants. Il vous permet de contrôler le nombre de documents renvoyés dans chaque réponse, d'améliorer les performances et de réduire la quantité de données transférées sur le réseau.

Paramètres

  • limit: Le nombre maximum de documents à renvoyer. Il doit s'agir d'une valeur entière non négative.

Exemple (MongoDB Shell)

L'exemple suivant montre comment utiliser l'$limitopérateur pour renvoyer au maximum un document correspondant au filtre donné.

Création d'exemples de documents

db.test.insertMany([ { "_id": 1, "star_rating": 4, "comments": "apple is red" }, { "_id": 2, "star_rating": 5, "comments": "comfortable couch" }, { "_id": 3, "star_rating": 3, "comments": "apples, oranges - healthy fruit" }, { "_id": 4, "star_rating": 5, "comments": "this is a great couch" }, { "_id": 5, "star_rating": 5, "comments": "interesting couch" } ]);

Exemple de requête

db.test.createIndex({ comments: "text" }); db.test.find({ $and: [ { star_rating: 5 }, { $text: { $search: "couch" } } ] }).limit(1);

Sortie

[ { _id: 2, star_rating: 5, comments: 'comfortable couch' } ]

Exemples de code

Pour afficher un exemple de code d'utilisation de la $limit commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

Node.js
const { MongoClient } = require('mongodb'); async function limitExample() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); try { await client.connect(); const db = client.db('test'); const collection = db.collection('test'); await collection.createIndex({ comments: 'text' }); const query = { $and: [ { star_rating: 5 }, { $text: { $search: "couch" } } ] }; const result = await collection.find(query).limit(1).toArray(); console.log(result); } catch (err) { console.error("Error:", err); } finally { await client.close(); } } limitExample();
Python
from pymongo import MongoClient def limit_example(): try: 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['test'] collection.create_index([('comments', 'text')]) query = { '$and': [ {'star_rating': 5}, {'$text': {'$search': 'couch'}} ] } result = collection.find(query).limit(1) for doc in result: print(doc) except Exception as e: print(f"An error occurred: {e}") finally: client.close() limit_example()