$mod - Amazon DocumentDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

$mod

$modOperator adalah operator aritmatika yang melakukan operasi modulo pada angka. Ia mengembalikan sisa membagi satu nomor dengan yang lain. Operator ini biasanya digunakan untuk menentukan apakah suatu bilangan ganjil atau genap, atau untuk mendistribusikan item ke dalam jumlah grup yang terbatas.

Parameter

  • expression1: Ekspresi dividen.

  • expression2: Ekspresi pembagi.

Contoh (MongoDB Shell)

Contoh ini menunjukkan bagaimana menggunakan $mod operator untuk menentukan jumlah widget sisa saat pengiriman dalam paket 100.

Buat dokumen sampel

db.widgets.insertMany([ { "_id" : 1, "widget" : "A", "count" : 80372 }, { "_id" : 2, "widget" : "B", "count" : 409282 }, { "_id" : 3, "widget" : "C", "count" : 60739 } ])

Contoh kueri

db.widgets.aggregate([ { $addFields: { leftOver: { $mod: [ "$count", 100 ] } } } ])

Keluaran

[ { "_id" : 1, "widget" : "A", "count" : 80372, "leftOver" : 72 }, { "_id" : 2, "widget" : "B", "count" : 409282, "leftOver" : 82 }, { "_id" : 3, "widget" : "C", "count" : 60739, "leftOver" : 39 } ]

Output menunjukkan sisa count dibagi dengan 100 untuk setiap dokumen, yang mewakili jumlah widget sisa saat pengiriman dalam paket 100.

Contoh kode

Untuk melihat contoh kode untuk menggunakan $mod perintah, pilih tab untuk bahasa yang ingin Anda gunakan:

Node.js
const { MongoClient } = require('mongodb'); async function main() { 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 widgets = db.collection('widgets'); await widgets.insertMany([ { "_id" : 1, "widget" : "A", "count" : 80372 }, { "_id" : 2, "widget" : "B", "count" : 409282 }, { "_id" : 3, "widget" : "C", "count" : 60739 } ]); const result = await widgets.aggregate([ { $addFields: { leftOver: { $mod: [ "$count", 100 ] } } } ]).toArray(); console.log(result); client.close(); } main();
Python
from pymongo import MongoClient client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] widgets = db['widgets'] widgets.insert_many([ { "_id" : 1, "widget" : "A", "count" : 80372 }, { "_id" : 2, "widget" : "B", "count" : 409282 }, { "_id" : 3, "widget" : "C", "count" : 60739 } ]) result = list(widgets.aggregate([ { "$addFields": { "leftOver": { "$mod": [ "$count", 100 ] } } } ])) print(result) client.close()