$nor - Amazon DocumentDB

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

$nor

$norOperator digunakan untuk mencocokkan dokumen di mana tidak ada kondisi kueri yang ditentukan yang benar. Ini mirip dengan operasi “NOR” logis, di mana hasilnya benar jika tidak ada operan yang benar.

Parameter

  • expression1: Ekspresi pertama untuk mengevaluasi.

  • expression2: Ekspresi kedua untuk mengevaluasi.

  • expressionN: Ekspresi tambahan untuk dievaluasi.

Contoh (MongoDB Shell)

Contoh berikut menunjukkan penggunaan $nor operator dengan mengambil dokumen di mana qty bidang tidak kurang dari 20 dan size bidang tidak sama dengan “XL”.

Buat dokumen sampel

db.items.insertMany([ { qty: 10, size: "M" }, { qty: 15, size: "XL" }, { qty: 25, size: "L" }, { qty: 30, size: "XL" } ])

Contoh kueri

db.items.find({ $nor: [ { qty: { $lt: 20 } }, { size: "XL" } ] })

Keluaran

[ { "_id" : ObjectId("..."), "qty" : 25, "size" : "L" } ]

Contoh kode

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

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('items'); const result = await collection.find({ $nor: [ { qty: { $lt: 20 } }, { size: "XL" } ] }).toArray(); 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['items'] result = list(collection.find({ '$nor': [ { 'qty': { '$lt': 20 } }, { 'size': 'XL' } ] })) print(result) client.close() example()