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

$mod

L'opérateur de $mod requête sélectionne les documents pour lesquels une valeur de champ divisée par un diviseur a un reste spécifié. Cela est utile pour filtrer les documents en fonction de conditions arithmétiques modulo.

Paramètres

  • divisor: le nombre par lequel diviser.

  • remainder: valeur restante attendue.

Exemple (MongoDB Shell)

L'exemple suivant montre comment utiliser l'$modopérateur pour rechercher toutes les commandes dont la quantité est un nombre impair.

Création d'exemples de documents

db.orders.insertMany([ { _id: 1, item: "Widget", quantity: 15 }, { _id: 2, item: "Gadget", quantity: 20 }, { _id: 3, item: "Tool", quantity: 7 }, { _id: 4, item: "Device", quantity: 12 }, { _id: 5, item: "Part", quantity: 9 } ]);

Exemple de requête

db.orders.find({ quantity: { $mod: [2, 1] } });

Sortie

{ "_id" : 1, "item" : "Widget", "quantity" : 15 } { "_id" : 3, "item" : "Tool", "quantity" : 7 } { "_id" : 5, "item" : "Part", "quantity" : 9 }

Cette requête renvoie des documents dans lesquels le reste de la quantité divisée par 2 est égal à 1, ce qui permet de sélectionner toutes les quantités impaires.

Exemples de code

Pour afficher un exemple de code permettant d'utiliser l'opérateur de $mod requête, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

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('orders'); const result = await collection.find({ quantity: { $mod: [2, 1] } }).toArray(); console.log(JSON.stringify(result, null, 2)); 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['orders'] result = list(collection.find({'quantity': {'$mod': [2, 1]}})) print(result) client.close() example()