Menu
CoddyTech

مقارنة الأعداد

جزء من قسم قواعد البيانات باستخدام MongoDB في رحلة Node.js على Coddy. الدرس 8 من 29.

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

const minimum = Number(input.minimum);
const list = await products.find({price: {$gte: minimum}}).toArray();

تصل قيم سلسلة الاستعلام كنص. حوّل الحد الرقمي باستخدام Number قبل مقارنته بالأرقام المخزنة. يختار هذا المثال المنتجات التي يكون سعرها مساويًا للحد الأدنى المطلوب أو أكبر منه. تظل النتيجة مصفوفة حتى لو طابق مستند واحد فقط. يجمع الدرس التالي بين المرشّحات الاختيارية في مسار رف الكتب.

challenge icon

التحدي

سهل

في exercise.js، أعد الكتب التي تكون سنتها الرقمية أكبر من أو تساوي input.from. يزوّد الخادم هذه القيمة من سلسلة الاستعلام. أعد المستندات المطابقة باستخدام المجموعة المقدَّمة.

جرّب GET /result?from=1960: ينطبق الشرط على Dune وKindred. جرّب ?from=1970: ينطبق الشرط على Kindred فقط. جرّب ?from=2000: أعد مصفوفة فارغة. السنوات الرقمية المُدخلة في هذا التمرين صالحة.

دع قاعدة البيانات تقارن السنوات باستخدام $gte. الحدّ عند 1965 يشمل Dune وكذلك Kindred.

جرّب بنفسك

export async function exercise(books, input) {
    return await books.find().toArray();
}

جميع دروس قواعد البيانات باستخدام MongoDB

تدرّب بنفسك: Playground لـ Express