sort() (ترتيب النتائج)

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

sort() (ترتيب النتائج)

ترتّب sort() نتائج المؤشر وفق حقول معطاة: `db.users.find().sort({ age: 1, name: -1 })`. القيم 1 للتصاعدي و-1 للتنازلي، وتُطبَّق حقلًا بعد حقل. يعمل الترتيب على الخادم — وهو أسرع ما يكون عندما يسنده فهرس؛ والحالات غير المسنودة بفهرس تُرتَّب في الذاكرة وقد تصطدم بحد 100 ميجابايت.

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

📝 الصيغة

db.<collection>.find(<filter>).sort(<sortKey>)

⚙️ المعلمات

مفتاح الفرزربط الحقول بالاتجاه، مثل {age: 1, name: -1}.

القيمة المرجعة:المؤشر المرتَّب حسب مفتاح الترتيب (قابل للتسلسل).

▶ مثال

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

// sort: عمر تصاعدي ثم اسم تنازلي، أخذ 3
const result = db.users.find()
  .sort({ age: 1, name: -1 })
  .limit(3)
  .toArray()
result

المخرجات:

[
  { _id: ObjectId('64c8a1b20000000000000001'), name: 'Alice', age: 21 },
  { _id: ObjectId('64c8a1b20000000000000002'), name: 'Bob', age: 25 }
]

📌 ملاحظات

📚 دروس ذات صلة

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

Qما معنى 1 و-1 في sort؟
A1 تصاعدي و-1 تنازلي — {age: -1} يرتّب الأقدم أولًا.
Qكيف أرتب حسب حقول متعددة؟
Aمرّر عدة حقول في مفتاح الترتيب، مثل {age: 1, name: -1} — العمر أولًا ثم الاسم.
Qماذا لو كان ترتيبي بطيئًا؟
Aأضف فهرسًا مركّبًا على حقول الترتيب؛ الترتيبات بلا فهرس تستخدم الذاكرة، وallowDiskUse() تساعد مع النتائج الضخمة.
Web-Tutorial.com

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

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

100%