$max - 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.

$max

L'étape d'$maxagrégation est utilisée pour renvoyer la valeur maximale d'un champ spécifié dans tous les documents d'une étape de pipeline. Cet opérateur est utile pour trouver la valeur la plus élevée dans un ensemble de documents.

Paramètres

  • expression: expression à utiliser pour calculer la valeur maximale.

Exemple (MongoDB Shell)

L'exemple suivant montre comment utiliser l'$maxopérateur pour trouver le score maximal dans un ensemble de documents destinés aux étudiants. L'$groupétape regroupe tous les documents et l'$maxopérateur est utilisé pour calculer la valeur maximale du score champ pour tous les documents.

Création d'exemples de documents

db.students.insertMany([ { name: "John", score: 85 }, { name: "Jane", score: 92 }, { name: "Bob", score: 78 }, { name: "Alice", score: 90 } ])

Exemple de requête

db.students.aggregate([ { $group: { _id: null, maxScore: { $max: "$score" } } }, { $project: { _id: 0, maxScore: 1 } } ])

Sortie

[ { maxScore: 92 } ]

Exemples de code

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

Node.js
const { MongoClient } = require('mongodb'); async function findMaxScore() { 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 students = db.collection('students'); const result = await students.aggregate([ { $group: { _id: null, maxScore: { $max: "$score" } } } ]).toArray(); console.log(result); await client.close(); } findMaxScore();
Python
from pymongo import MongoClient def find_max_score(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] students = db.students result = list(students.aggregate([ { "$group": { "_id": None, "maxScore": { "$max": "$score" } } } ])) print(result) client.close() find_max_score()