مقدمة
يعتبر MongoDB واحدًا من أشهر قواعد البيانات غير العلائقية التي تعتمد على الوثائق. تُستخدم MongoDB على نطاق واسع في تطوير التطبيقات الحديثة، خاصةً تلك التي تعتمد على JavaScript وNode.js. واحدة من الميزات المهمة التي تقدمها MongoDB هي القدرة على تحديد عدد الوثائق التي يتم استرجاعها من قاعدة البيانات [شركة برمجة مصرية] باستخدام خاصية limit.
ما هي خاصية Limit في MongoDB؟
خاصية limit في MongoDB تُستخدم لتحديد العدد الأقصى من الوثائق التي يمكن استرجاعها من مجموعة معينة. تُعتبر هذه الخاصية مفيدة جدًا عند التعامل مع مجموعات كبيرة من البيانات، حيث يمكن من خلالها التحكم في كمية البيانات التي يتم استردادها في كل طلب، مما يساعد في تحسين أداء التطبيق [شركة برمجة مصرية] وتقليل استهلاك الموارد.
على سبيل المثال، إذا كنت تخزن معلومات ضخمة في قاعدة بياناتك وتريد استرجاع عدد معين من السجلات فقط، يمكنك استخدام خاصية limit لتحقيق ذلك. هذا يُعتبر جزءًا من تقنيات التقسيم (pagination) في التطبيقات الحديثة.
كيفية استخدام Limit في Node.js
للاستفادة من خاصية limit في Node.js عند التعامل مع MongoDB، يمكنك استخدام مكتبة mongoose الشهيرة. سنوضح ذلك من خلال بعض الأمثلة التوضيحية.
مثال 1: استخدام Limit للحصول على عدد معين من الوثائق
const mongoose = require('mongoose');
const Item = require('./models/item');
mongoose.connect('mongodb://localhost:27017/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true });
async function getLimitedItems() {
try {
const items = await Item.find().limit(5);
console.log(items);
} catch (error) {
console.error(error);
}
}
getLimitedItems();
في هذا المثال، نقوم بتحديد اتصال بقاعدة البيانات واستخدام النموذج Item لاسترجاع أول 5 وثائق فقط من المجموعة.
مثال 2: دمج Limit مع Skip للتقسيم
async function getPaginatedItems(page, limit) {
try {
const items = await Item.find()
.skip((page - 1) * limit)
.limit(limit);
console.log(items);
} catch (error) {
console.error(error);
}
}
getPaginatedItems(2, 5);
في هذا المثال، نستخدم limit مع skip لتطبيق تقنية التقسيم. نقوم بتحديد الصفحة الثانية واسترجاع 5 عناصر في كل صفحة. هذا يتيح لنا التنقل بين الصفحات بسهولة وفاعلية.
