تخطَّ إلى المحتوى

🍃 شرح MongoDB

العلاقات

الدرس 17 من 25· ⏱ 1 دقائق قراءة

واحد لواحد (One-to-One)

غالبًا بالتضمين:

{ name: "براء", profile: { bio: "مطوّر", avatar: "..." } }

واحد لكثير (One-to-Many)

  • قليل: تضمين كمصفوفة.
{ name: "براء", phones: ["050...", "055..."] }
  • كثير: إشارة من جهة "الكثير".
// posts
{ _id: 1, title: "مقال", authorId: 10 }

كثير لكثير (Many-to-Many)

احفظ مصفوفة معرّفات في أحد الطرفين (أو كليهما):

// students
{ _id: 1, name: "براء", courses: [101, 102] }
// courses
{ _id: 101, name: "Mongo" }

أو مجموعة وسيطة (enrollments) للعلاقات الكبيرة.

الربط عند القراءة

db.posts.aggregate([
  { $lookup: {
      from: "users", localField: "authorId",
      foreignField: "_id", as: "author"
  } }
])

🎯 التالي: التحقّق من المخطّط.

هل كان هذا الدرس مفيدًا؟