اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

عملية projection يُقصد بها إختيار خواص معينة من العﻻقة مما ينشئ لنا عﻻقة جديدة , مثلا لدينا العﻻقات أو الجداول الأتية

user(id,name,age)
post(id,user_id,title)

إن قمنا بإختيار الخاصية name, id من العﻻقة user هذا يُسمى projection لأننا قمنا بإختيار خواص معينة من العﻻقة , ويمكن تمثيله بالجملة الإستعﻻمية الأتية

select id, name from user

ويمكن للprojection أن يكون معقداً أكثر , مثلاً إن أردنا إختيار أسامى المنشورات التي قام المستخدم بنشرها سنحتاج أن نختار الtitle الخاص بالمنتجات التي لديها خاصية user_id مساوية لقيمة id الخاصة بالمستخدم, كما في الجملة التالية

select title from post inner join user on user.id = post.user_id

وبوجه عام عملية إستخراج عﻻقة من عﻻقة أخرى عن طريق إختيار خواص محددة يسمى projection

  • 0
نشر

يختلف معنى projection حسب نوع قواعد البيانات التي تقصدها في سؤالك. فبالنسبة لقواعد البيانات غير العلائقية (مثل MongoDB) يعني المصطلح projection اختيار أو فلترة بعض البيانات اللازمة لاسترجاعها بدلاً من إعادة كامل بيانات المستند.

مثال:

const cursor = db
  .collection('inventory')
  .find({
    status: 'A'
  })
  .project({ item: 1, status: 1 });

والتي ستعيد قيم الحقول _id و item و status حتى في حال وجود خصائص إضافية ضمن هذا المستند.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...