$max - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$max

Der $max Aktualisierungsoperator aktualisiert den Wert eines Felds nur, wenn der angegebene Wert größer als der aktuelle Feldwert ist. Dieser Operator ist nützlich, um Maximalwerte bei Aktualisierungen beizubehalten.

Parameter

  • field: Das zu aktualisierende Feld.

  • value: Der Wert, der mit dem aktuellen Feldwert verglichen werden soll.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $max Operator verwendet wird, um die höchste aufgezeichnete Punktzahl für einen Spieler zu aktualisieren.

Erstellen Sie Beispieldokumente

db.scores.insertMany([ { _id: 1, player: "Alice", highScore: 85 }, { _id: 2, player: "Bob", highScore: 92 }, { _id: 3, player: "Charlie", highScore: 78 } ])

Beispiel aktualisieren

db.scores.updateOne( { _id: 1 }, { $max: { highScore: 95 } } )

Ergebnis

Das highScore Feld für Alice wird auf 95 aktualisiert, weil 95 größer als der aktuelle Wert von 85 ist.

{ "_id": 1, "player": "Alice", "highScore": 95 }

Codebeispiele

Um ein Codebeispiel für die Verwendung des $max Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

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('scores'); const result = await collection.updateOne( { _id: 1 }, { $max: { highScore: 95 } } ); 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['scores'] result = collection.update_one( { '_id': 1 }, { '$max': { 'highScore': 95 } } ) print(result) client.close() example()