find (الاستعلام عن مستندات)

آخر تحديث: 2026-10-09

find (الاستعلام عن مستندات)

find هو أمر الاستعلام في MongoDB. تستخدم mongosh عادةً المساعدة db.collection.find(filter, projection)؛ والصيغة الخام هي db.runCommand({ find: 'orders', filter: {...} }). يدعم filter و projection و sort و limit و skip و batchSize. النتيجة مؤشر؛ وid غير الصفري يتطلب getMore لدفعات أخرى.

الفئةأوامر الإدارة
إصدار MongoDB1.0+
لغة المثالmongosh (الطرفية)

📝 الصيغة

db.orders.find({ status: "shipped" }).limit(10)
db.runCommand({
  find: "orders",
  filter: { status: "shipped" },
  limit: 10
})

⚙️ المعلمات

filterمستند شرط الاستعلام.
projectionتحديد الحقول (1 تضمين / 0 استبعاد).
sort/limit/skipترتيب الفرز وحد النتائج والتخطي.

القيمة المرجعة:يُرجع مؤشرًا؛ يحمل firstBatch المطابقات، وgetMore للدفعات الإضافية عندما لا يكون id صفرًا

▶ مثال

نفّذ الأوامر التالية في mongosh المحلي لديك (يتطلب تشغيل mongod):

// find: صيغة الأمر الخام
use shop
db.runCommand({
  find: 'orders',
  filter: { status: 'shipped' },
  sort: { createdAt: -1 },
  limit: 5
})

المخرجات:

{ cursor: { firstBatch: [ { _id: ObjectId('...'), status: 'shipped' } ], id: 0, ns: 'shop.orders' }, ok: 1 }

📌 ملاحظات

مزيد من الحالات العملية قريبًا.

📚 دروس ذات صلة

❓ الأسئلة الشائعة

Qكيف ترتبط findOne بـ find؟
Aتلف findOne حول find مع limit: 1 وتُعيد أول مستند.
Qكيف أجلب كل نتائج المؤشر؟
Aاستدعِ toArray() أو كرّر؛ يصدر المشغّل getMore تلقائيًا عندما يكون id غير صفري.
Qكيف أفحص أداء الاستعلام؟
Aشغّل explain() وافحص استخدام الفهرس مع executionStats.
Web-Tutorial.com

فريق Web-Tutorial التقني

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

100%