مشغلو الاستعلام والاختيار في MongoDB

0 الأسهم
0
0
0
0

مقدمة

تتضمن مشغلات الاستعلام في MongoDB مشغلات المقارنة والمنطقية والعناصرية والتقييم والجغرافية والمصفوفة والبتية والتعليق.

مشغلات مقارنة MongoDB

$eq

يُحدد مُعامل $eq شرط المساواة. يُطابق هذا المُعامل المستندات التي تكون فيها قيمة الحقل مساوية للقيمة المُحددة.

بناء الجملة:

{ : { $eq: } }

مثال:

db.books.find({ price: { $eq: 300 } })

في هذا المثال، يبحث الاستعلام في مجموعة الكتب لتحديد جميع المستندات حيث تكون قيمة حقل السعر 300.

$gt

يقوم عامل $gt باختيار المستندات التي تكون فيها قيمة الحقل أكبر من القيمة المحددة.

بناء الجملة:

{ field: { $gt: value } }

مثال:

db.books.find({ price: { $gt: 200 } })
$gte

يقوم عامل $gte باختيار المستندات حيث تكون قيمة الحقل أكبر من أو تساوي القيمة المحددة.

بناء الجملة:

{ field: { $gte: value } }

مثال:

db.books.find({ price: { $gte: 250 } })
$in

يقوم عامل $in باختيار المستندات حيث تكون قيمة الحقل مساوية لأي من القيم الموجودة في المصفوفة المحددة.

بناء الجملة:

{ field: { $in: [, , …] } }

مثال:

db.books.find({ price: { $in: [100, 200] } })
$lt

يقوم عامل $lt باختيار المستندات حيث تكون قيمة الحقل أقل من القيمة المحددة.

بناء الجملة:

{ field: { $lt: value } }

مثال:

db.books.find({ price: { $lt: 20 } })
$lte

يقوم عامل $lte باختيار المستندات حيث تكون قيمة الحقل أقل من أو تساوي القيمة المحددة.

بناء الجملة:

{ field: { $lte: value } }

مثال:

db.books.find({ price: { $lte: 250 } })
$ne

يقوم عامل $ne باختيار المستندات حيث لا تساوي قيمة الحقل القيمة المحددة.

بناء الجملة:

{ : { $ne: } }

مثال:

db.books.find({ price: { $ne: 500 } })
$nin

يقوم عامل $nin باختيار المستندات حيث لا توجد قيمة الحقل في المصفوفة المحددة أو لا توجد على الإطلاق.

بناء الجملة:

{ field: { $nin: [, , …] } }

مثال:

db.books.find({ price: { $nin: [50, 150, 200] } })

عوامل التشغيل المنطقية في MongoDB

$and

يعمل عامل $and كمعامل AND منطقي على مصفوفة. يجب أن تحتوي المصفوفة على تعبير واحد أو أكثر، وتختار المستندات التي تُلبي جميع التعبيرات فيها.

بناء الجملة:

{ $and: [ { }, { }, ....] }

مثال:

db.books.find({ $and: [ { price: { $ne: 500 } }, { price: { $exists: true } } ] })
$not

يعمل عامل $not كمشغل NOT منطقي على التعبير المحدد ويحدد المستندات التي لا تتطابق مع التعبير المقابل.

بناء الجملة:

{ field: { $not: { } } }

مثال:

db.books.find({ price: { $not: { $gt: 200 } } })
$nor

يعمل عامل $nor كمشغل NOR منطقي على مجموعة مكونة من مصطلح استعلام واحد أو أكثر، حيث يقوم بتحديد المستندات التي لا تلبي أيًا من مصطلحات الاستعلام في المجموعة.

بناء الجملة:

{ $nor: [ { }, { }, ..... ] }

مثال:

db.books.find({ $nor: [ { price: 200 }, { sale: true } ] })
$or

<pعملگر $or به عنوان یک عملگر منطقی OR روی یک آرایه از دو یا چند عبارت عمل می‌کند و اسنادی را انتخاب می‌کند که حداقل یکی از عبارات را برآورده کنند.

بناء الجملة:

{ $or: [ { }, { }, ... , { } ] }

مثال:

db.books.find({ $or: [ { quantity: { $lt: 200 } }, { price: 500 } ] })

عوامل تشغيل عنصرية في MongoDB

$exists

يختار عامل $exists المستندات التي تحتوي على الحقل المحدد عندما تكون القيمة المنطقية صحيحة. ويختار أيضًا المستندات التي تحتوي على الحقل عندما تكون القيمة فارغة.

بناء الجملة:

{ field: { $exists: } }

مثال:

db.books.find({ qty: { $exists: true, $nin: [5, 15] } })
$type

يقوم عامل $type باختيار المستندات التي تم تحديد قيمة حقلها كنوع BSON.

بناء الجملة:

{ field: { $type: } }

مثال:

db.books.find({ "bookid": { $type: 2 } })

مشغلو تقييم MongoDB

$expr

يسمح عامل $expr باستخدام التعبيرات المجمعة في لغة الاستعلام.

بناء الجملة:

{ $expr: { } }

مثال:

db.store.find({ $expr: { $gt: [ "$product", "price" ] } })
مخطط $json

يقوم هذا المشغل باختيار المستندات التي تطابق مخطط JSON المحدد.

بناء الجملة:

{ $jsonSchema: }
$mod

يقوم عامل $mod باختيار المستندات التي تحتوي قيمة حقلها، عند قسمتها على المقسوم، على الباقي المحدد.

بناء الجملة:

{ field: { $mod: [ divisor, remainder ] } }

مثال:

db.books.find({ qty: { $mod: [ 200, 0 ] } })
$regex

يوفر هذا المشغل إمكانيات التعبيرات العادية لمطابقة أنماط النصوص في الاستعلامات. يستخدم MongoDB تعبيرات عادية متوافقة مع لغة Perl.

بناء الجملة:

{ : /pattern/ }

مثال:

db.books.find({ price: { $regex: /789$/ } })
$text

يقوم عامل $text بالبحث عن محتويات الحقل المفهرس باستخدام فهرس النص.

بناء الجملة:

{ $text: { $search: , $language: , $caseSensitive: , $diacriticSensitive: } }

مثال:

db.books.find({ $text: { $search: "Othelo" } })
$حيث

يتم استخدام عامل "where" لتمرير سلسلة تحتوي على تعبير JavaScript أو دالة JavaScript كاملة إلى محرك الاستعلام.

مثال:

db.books.find({ $where: function() { return (hex_md5(this.name) == "9b53e667f30cd329dca1ec9e6a8") } })
اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *


قد يعجبك أيضاً
كيفية تثبيت Cockpit على Ubuntu 24.04

كيفية تثبيت Cockpit على Ubuntu 24.04

Cockpit هي لوحة إدارة خوادم عبر الإنترنت، تتيح مراقبة وإدارة الخدمات والتخزين والسجلات والمستخدمين بطريقة رسومية بسيطة. يتيح استخدام Cockpit على خادم VPS لمسؤولي النظام تنفيذ العديد من مهام إدارة الخادم دون الحاجة إلى سطر أوامر. سنشرح لك أدناه كيفية تثبيت Cockpit وتكوين الأمان والوصول إليه خطوة بخطوة.