MongoDB ले क्वेरी शर्तहरूलाई तार्किक अपरेटरहरू — $and, $or, $not, $nor — र फिल्टरको निहित AND प्रयोग गरेर संयोजन गर्छ। यसले तपाईलाई जटिल क्वेरी तर्क व्यक्त गर्न र तपाईलाई चाहिने ठीक डকुमेन्टहरू खोज्न दिन्छ।
MongoDB ले क्वेरी शर्तहरूलाई तार्किक अपरेटरहरू — $and, $or, $not, $nor — र फिल्टरको निहित AND प्रयोग गरेर संयोजन गर्छ। यसले तपाईलाई जटिल क्वेरी तर्क व्यक्त गर्न र तपाईलाई चाहिने ठीक डকुमेन्टहरू खोज्न दिन्छ।
// multiple fields in one filter = AND (all must match)
db.users.find({ active: true, age: { $gt: 18 } });
// → active = true AND age > 18 (no explicit $and needed)
सबैभन्दा सरल केस: फिल्टरमा एकाधिक शर्तहरू सूचीबद्ध गर्नु निहित रूपमा तिनीहरूलाई AND गर्छ — दुवै/सबै मेल खान्छ।
// $or takes an array of conditions; a document matches if ANY is true
db.users.find({
$or: [
{ age: { $lt: 18 } },
{ age: { $gt: 65 } }
]
});
// → age < 18 OR age > 65
// usually implicit, but $and is needed when combining conditions on the SAME field
db.products.find({
$and: [
{ price: { $gt: 100 } },
{ price: { $lt: 500 } }
]
});
// (often you can write { price: { $gt: 100, $lt: 500 } } instead — cleaner)
// $and is also useful to combine $or groups:
db.users.find({
$and: [
{ $or: [{ role: "admin" }, { role: "editor" }] },
{ active: true }
]
});
db.products.find({ price: { $not: { $gt: 100 } } }); // NOT (price > 100) → price <= 100 or missing
db.users.find({ $nor: [{ active: true }, { premium: true }] }); // NEITHER condition true
// real queries combine logical + comparison operators
db.orders.find({
status: "shipped", // implicit AND
$or: [
{ total: { $gt: 1000 } },
{ priority: "high" }
]
});
// → status = shipped AND (total > 1000 OR priority = high)
तार्किक अपरेटरहरू MongoDB मा जटिल क्वेरी शर्तहरू व्यक्त गर्न आवश्यक छन् — वास्तविक क्वेरीहरूलाई अक्सर एकल शर्तभन्दा बढी आवश्यक हुन्छ (AND/OR तर्कसँग एकाधिक मानदण्ड संयोजन गर्दै), त्यसैले तिनीहरू बुझ्नु डेटा प्रभावकारी रूपमा फिल्टर गर्नको लागि आधारभूत दैनिक ज्ञान हो।
निहित AND बुझ्नु (एकाधिक फिल्ड शर्तहरूको सबैभन्दा सरल, सबैभन्दा सामान्य केस — शर्तहरू सूचीबद्ध गर्दै जो सबै मेल खान्छ), $or (धेरै शर्तहरूमध्ये कुनै पनि मेल खाउनु — विकल्पहरूको लागि एक बारम्बार आवश्यकता), $and (स्पष्ट AND, एउटै फिल्डमा शर्तहरू संयोजन गर्न वा $or खण्डहरू समूहबद्ध गर्न आवश्यक), र $not/$nor (नकार) को तार्किक निर्माण ब्लकहरू क्वेरी आवश्यकताहरू व्यक्त गर्नको लागि कभर गर्छ।
तार्किक र तुलना अपरेटरहरू कसरी संयोजन गर्ने बुझ्नु (