يمكنك إضافة مزيد من القوة إلى تحليل البيانات عن طريق إنشاء علاقات بين الجداول المختلفة. العلاقة هي اتصال بين جدولين يحتويان على بيانات: عمود واحد في كل جدول هو أساس العلاقة. لمعرفة سبب أهمية العلاقات، تخيل أنك تتعقب بيانات طلبات العملاء في شركتك. يمكنك تعقب جميع البيانات في جدول واحد له بنية تشبه ما يلي:
| معرّف العميل | الاسم | البريد الإلكتروني | DiscountRate | معرّف الطلب | تاريخ الطلب | المنتج | الكمية |
|---|---|---|---|---|---|---|---|
| 1 | مصطفى | chris.ashton@contoso.com | .05 | 256 | 2010-01-07 | Compact Digital | 11 |
| 1 | مصطفى | chris.ashton@contoso.com | .05 | 255 | 2010-01-03 | SLR Camera | 15 |
| 2 | غانم | michal.jaworski@contoso.com | .10 | 254 | 2010-01-03 | Budget Movie-Maker | 27 |
يمكن أن يعمل هذا النهج، لكنه يتضمن تخزين الكثير من البيانات المكررة، مثل عنوان البريد الإلكتروني للعميل لكل طلب. التخزين غير مكلف، لكن إذا تغير عنوان البريد الإلكتروني، فيجب عليك التأكد من تحديث كل صف لهذا العميل. أحد حلول هذه المشكلة هي تقسيم البيانات إلى جداول متعددة وتعريف العلاقات بين هذه الجداول. وهذا هو النهج المستخدم في قواعد البيانات الارتباطية مثل SQL Server. على سبيل المثال، قد تمثل قاعدة البيانات التي تستوردها بيانات الطلبات باستخدام ثلاثة جداول ذات صلة:
العملاء
| [معرف العميل] | الاسم | البريد الإلكتروني |
|---|---|---|
| 1 | مصطفى | chris.ashton@contoso.com |
| 2 | غانم | michal.jaworski@contoso.com |
CustomerDiscounts
| [معرف العميل] | DiscountRate |
|---|---|
| 1 | .05 |
| 2 | .10 |
الطلبات
| [معرف العميل] | معرّف الطلب | تاريخ الطلب | المنتج | الكمية |
|---|---|---|---|---|
| 1 | 256 | 2010-01-07 | Compact Digital | 11 |
| 1 | 255 | 2010-01-03 | SLR Camera | 15 |
| 2 | 254 | 2010-01-03 | Budget Movie-Maker | 27 |
توجد العلاقات داخل نموذج بيانات - نموذج تقوم بإنشائه صراحة، أو العلاقة التي يقوم Excel بإنشائه تلقائيا نيابة عنك عند استيراد جداول متعددة في الوقت نفسه. يمكنك أيضا استخدام الوظيفة الإضافية Power Pivot لإنشاء النموذج أو إدارته. راجع إنشاء نموذج بيانات في Excel لمزيد من التفاصيل.
إذا كنت تستخدم الوظيفة الإضافية Power Pivot لاستيراد جداول من قاعدة البيانات نفسها، فبإمكان Power Pivot اكتشاف العلاقات بين الجداول استنادا إلى الأعمدة الموجودة بين [الأقواس]، ويمكنه إعادة إنتاج هذه العلاقات في نموذج البيانات الذي يقوم بإنشائه في الخلفية. لمزيد من المعلومات، راجع الاكتشاف التلقائي للعلاقات واستنتاجها في هذه المقالة. إذا قمت باستيراد جداول من عدة مصادر، فيمكنك إنشاء علاقات يدوياً كما هو موضح في إنشاء علاقة بين جدولين.
الأعمدة والمفاتيح
تعتمد العلاقات على الأعمدة الموجودة في كل جدول وتحتوي على نفس البيانات. على سبيل المثال، يمكنك ربط جدول "العملاء " بجدول "الطلبات " إذا كان كل جدول يحتوي على عمود يخزن معرف العميل. في المثال، أسماء الأعمدة متشابهة، لكن هذا ليس شرطاً. فيمكن أن يكون أحدها CustomerID والآخر CustomerNumber، طالما أن جميع الصفوف في جدول "الطلبات" تحتوي على معرف مخزّن أيضاً في جدول "العملاء".
في قاعدة بيانات ارتباطية، يوجد عدة أنواع من المفاتيح. عادة ما يكون المفتاح عمودا ذا خصائص خاصة. يمكن أن يساعدك فهم الغرض من كل مفتاح في إدارة نموذج البيانات المتعدد الجداول الذي يقدم البيانات إلى تقرير PivotTable أو PivotChart أو Power View.
على الرغم من وجود أنواع كثيرة من المفاتيح، إلا أنها تعتبر الأكثر أهمية لغرضنا هنا:
- المفتاح الأساسي: يحدد صفا في جدول بشكل فريد، مثل CustomerIDفي جدول العملاء .
- مفتاح بديل (أو مفتاح مرشح): عمود فريد غير المفتاح الأساسي. على سبيل المثال، يمكن أن يخزن جدول "الموظفون" معرّف الموظف ورقم التأمين الاجتماعي، وكلاهما فريد.
- المفتاح الخارجي: عمود يشير إلى عمود فريد في جدول آخر، مثل CustomerID في جدول "الطلبات "، والذي يشير إلى CustomerID في جدول "العملاء".
في نموذج البيانات، يشار إلى المفتاح الأساسي أو المفتاح البديل كعمود مرتبط. إذا كان الجدول يتضمن مفتاحاً أساسياً ومفتاحاً بديلاً، فيمكنك استخدام أيهما كأساس لعلاقة الجدول. يشار إلى المفتاح الخارجي كالعمود المصدر أو عمود فقط. في المثال، يمكن تعريف علاقة بين CustomerID في جدول "الطلبات " (العمود) وCustomerID في جدول "العملاء " (عمود البحث). إذا قمت باستيراد بيانات من قاعدة بيانات ارتباطية، يختار Excel بشكل افتراضي المفتاح الخارجي من جدول والمفتاح الأساسي المقابل من الجدول الآخر. لكن، يمكنك استخدام أي عمود يحتوي على قيم فريدة لعمود البحث.
أنواع العلاقات
تعتبر العلاقة بين العميل والطلب علاقة واحد إلى كثير. يمكن أن يكون لكل عميل طلبات متعددة لكن لا يمكن أن يكون لطلب عدة عملاء. ثمة علاقة جدول مهمة أخرى هي علاقة واحد إلى واحد. في المثال الذي نقدمه هنا، للجدول CustomerDiscounts ، الذي يعرف معدل خصم واحد لكل عميل، علاقة واحد لواحد مع جدول "العملاء".
يوضح هذا الجدول العلاقات بين ثلاثة جداول (العملاء وخصومات العميلوالطلبات):
| العلاقة | Type | عمود بحث | العمود |
|---|---|---|---|
| Customers-CustomerDiscounts | واحد لواحد | Customers.CustomerID | CustomerDiscounts.CustomerID |
| العملاء-الأوامر | واحد لكثير | Customers.CustomerID | Orders.CustomerID |
ملاحظة
علاقات كثير إلى كثير غير معتمدة في نموذج البيانات. من أمثلة علاقة كثير إلى كثير هو العلاقة المباشرة بين "المنتجات" والعملاء"، حيث يمكن لعميل شراء عدة منتجات ويمكن لعدة عملاء شراء نفس المنتج.
العلاقات والأداء
بعد إنشاء أي علاقة، يجب أن يقوم Excel عادة بإعادة حساب أي صيغ تستخدم أعمدة من الجداول في العلاقة التي تم إنشاؤها حديثا. يمكن أن تستغرق المعالجة بعض الوقت، تبعاً لكمية البيانات وتعقيد العلاقات. للحصول على مزيد من التفاصيل، راجع إعادة حساب الصيغ.
العلاقات المتعددة بين الجداول
يمكن أن يحتوي نموذج البيانات على علاقات متعددة بين جدولين. لإنشاء عمليات حسابية دقيقة، يحتاج Excel مسارا واحدا من جدول إلى التالي. بالتالي، تكون علاقة واحدة فقط بين كل زوج من الجداول نشطة في كل مرة. على الرغم من أن العلاقات الأخرى غير نشطة، إلا أنه يمكنك تحديد علاقة غير نشطة في الصيغ والاستعلامات.
في طريقة عرض المخطط، تكون العلاقة النشطة خطا متصلا والعلاقة غير النشطة خطوط متقطعة. على سبيل المثال، في AdventureWorksDW2012، يحتوي الجدول DimDate على العمود، DateKey، المرتبط بثلاثة أعمدة مختلفة في الجدول FactInternetSales وهي: OrderDate وDueDateوShipDate. إذا كانت العلاقة النشطة بين DateKey وOrderDate، فتكون هي العلاقة الافتراضية في الصيغ إلا إذا حددت خلاف ذلك.
المتطلبات الخاصة بعلاقة جدول
يمكن إنشاء علاقة عند استيفاء المتطلبات التالية:
| Criteria | الوصف |
|---|---|
| معرف فريد لكل جدول | يجب أن يحتوي كل جدول على عمود واحد يعرّف بشكل فريد كل صف في هذا الجدول. تتم الإشارة غالباً إلى هذا العمود كمفتاح أساسي. |
| أعمدة بحث فريدة | يجب أن تكون قيم البيانات في عمود البحث فريدة. بكلمات أخرى، لا يمكن للعمود أن يحتوي على تكرارات. في نموذج البيانات، تكون القيم الخالية مكافئة للقيم الفارغة، وهي قيمة بيانات متميزة. هذا يعني عدم إمكانية وجود عدة قيم خالية في عمود البحث. |
| أنواع البيانات المتوافقة | يجب أن تكون أنواع البيانات في كل من عمود المصدر وعمود البحث متوافقة. لمزيد من المعلومات حول أنواع البيانات، راجع أنواع البيانات المعتمدة في نماذج البيانات. |
ميزات قاعدة البيانات غير المعتمدة في نموذج بيانات Excel
في نموذج البيانات، لا يمكنك إنشاء علاقة جدول إذا كان المفتاح مفتاحاً مركباً. وتكون أيضاً مقيداً بإنشاء علاقة واحد لواحد أو واحد إلى كثير. أنواع العلاقات الأخرى غير معتمدة.
المفاتيح المركبة وأعمدة البحث
يتكوّن المركب من أكثر من عمود واحد. ليس بإمكان نماذج البيانات استخدام المفاتيح المركبة: يجب أن يتضمن الجدول دائما عمودا واحدا بالضبط يعرف كل صف في الجدول بشكل فريد. إذا قمت باستيراد الجداول التي تتضمن علاقة مستندة إلى مفتاح مركب، فسيتجاهل معالج استيراد الجدول في Power Pivot تلك العلاقة نظرا إلى عدم إمكانية إنشائها في النموذج.
لإنشاء علاقات بين جدولين يتضمنان أعمدة متعددة تعرّف المفاتيح الأساسية والخارجية، قم أولاً بدمج القيم لإنشاء عمود مفتاح واحد قبل إنشاء العلاقة. يمكنك القيام بذلك قبل استيراد البيانات، أو عن طريق إنشاء عمود محسوب في نموذج البيانات باستخدام الوظيفة الإضافية Power Pivot.
علاقات كثير إلى كثير
لا يمكن أن يحتوي نموذج البيانات على علاقات كثير إلى كثير. ولا يمكنك إضافة جداول توصيل في النموذج. لكن يمكنك استخدام دالات DAX لنمذجة علاقات كثير إلى كثير.
الصلات التلقائية والتكرارات الحلقية
غير مسموح بالصلات التلقائية في نموذج البيانات. الصلة التلقائية هي علاقة متداخلة بين جدول ونفسه. غالباً تُستخدم الصلات التلقائية في تعريف التسلسلات الهيكلية الأصل-الفرع. على سبيل المثال، يمكنك ربط جدول "الموظفين" بنفسه لإنشاء تسلسل هيكلي يوضح سلسلة الإدارة في شركة.
لا يسمح Excel بإنشاء تكرارات حلقية بين العلاقات في مصنف. بعبارة أخرى، مجموعة العلاقات التالية ممنوعة.
الجدول 1، العمود A إلى الجدول 2، العمود F
الجدول 2، العمود F إلى الجدول 3، العمود n
الجدول 3، العمود n إلى الجدول 1، العمود A
إذا حاولت إنشاء علاقة تؤدي إلى إنشاء تكرار حلقي، فسيظهر لديك خطأ.
الاكتشاف التلقائي للعلاقات واستنتاجها في Power Pivot
تتمثل إحدى ميزات استيراد البيانات باستخدام الوظيفة الإضافية Power Pivot في قدرة Power Pivot أحيانا على اكتشاف العلاقات وإنشاء علاقات جديدة في نموذج البيانات الذي يقوم بإنشائه في Excel.
عند استيراد جداول متعددة، يكتشف Power Pivot تلقائيا أي علاقات موجودة بين الجداول. وكذلك، عند إنشاء PivotTable، يحلل Power Pivot البيانات في الجداول. إنها تكتشف العلاقات المحتملة التي لم يتم تعريفها، وتقترح أعمدة مناسبة ليتم تضمينها في تلك العلاقات.
تستخدم خوارزمية الاكتشاف بيانات إحصائية حول القيم وبيانات التعريف الخاصة بالأعمدة لإنشاء استنتاجات حول احتمالية العلاقات.
- يجب أن تكون أنواع البيانات في جميع الأعمدة المرتبطة متوافقة. بالنسبة للاكتشاف التلقائي، أنواع بيانات النص والأعداد الصحيحة هي المعتمدة فقط. لمزيد من المعلومات حول أنواع البيانات، راجع أنواع البيانات المعتمدة في نماذج البيانات.
- لاكتشاف العلاقة بنجاح، يجب أن يكون عدد المفاتيح الفريدة في عمود البحث أكبر من القيم في الجدول في الجانب المتعدد. بعبارة أخرى، يجب ألا يحتوي العمود الأساسي في الجانب المتعدد من العلاقة على أي قيم غير موجودة في العمود الأساسي في جدول البحث. على سبيل المثال، افترض أن لديك جدولاً يسرد المنتجات مع معرّفاتها (جدول البحث) وجدول المبيعات يسرد مبيعات كل منتج (الجانب المتعدد من العلاقة). إذا كانت سجلات المبيعات تحتوي على معرّف منتج ليس له معرّف مقابل في جدول "المنتجات"، فلا يمكن إنشاء العلاقة تلقائياً لكن يمكنك إنشاؤها يدوياً. لجعل Excel يكتشف العلاقة، تحتاج أولاً إلى تحديث جدول البحث "المنتج" بمعرفات المنتجات المفقودة.
- تأكد أن اسم العمود الأساسي في الجانب المتعدد مشابه لاسم العمود الأساسي في جدول البحث. ليس من الضروري أن تكون الأسماء متماثلة تماماً. على سبيل المثال، في مجال الأعمال، لديك غالبا مجموعة متنوعة لأسماء الأعمدة التي تحتوي على نفس البيانات بشكل أساسي: Emp ID وEmployeeID ومعرف الموظف EMP_ID وغير ذلك. تكتشف الخوارزمية الأسماء المتشابهة وتعيّن احتمالية أعلى للأعمدة التي تحتوي على أسماء متشابهة أو متطابقة تماماً. بالتالي، لزيادة احتمالية إنشاء علاقة، يمكنك تجربة إعادة تسمية الأعمدة في البيانات التي قمت باستيرادها إلى اسم مشابه للأعمدة في الجداول الموجودة. إذا وجد Excel عدة علاقات ممكنة، فلا ينشئ علاقة.
قد تساعدك هذه المعلومات في فهم السبب وراء عدم اكتشاف جميع العلاقات، أو كيف يمكن للتغييرات في بيانات التعريف--مثل اسم الحقل وأنواع البيانات--أن تحسن نتائج اكتشاف العلاقة التلقائي. لمزيد من المعلومات، راجع استكشاف أخطاء العلاقات وإصلاحها.
الاكتشاف التلقائي للمجموعات المسماة
لا يتم اكتشاف العلاقات تلقائياً بين المجموعات المسمّاة والحقول المرتبطة في PivotTable. يمكنك إنشاء هذه العلاقات يدوياً. إذا أردت استخدام اكتشاف العلاقة التلقائي، فقم بإزالة كل مجموعة مسمّاة وإضافة الحقول الفردية من المجموعة المسمّاة إلى PivotTable مباشرة.
استنتاج العلاقات
في بعض الحالات، يتم إنشاء تسلسل العلاقات بين الجداول تلقائياً. على سبيل المثال، إذا قمت بإنشاء علاقة بين المجموعتين الأوليين في الجداول أدناه، فسيتم استنتاج وجود علاقة بين الجدولين الآخرين، ويتم إنشاء علاقة تلقائياً.
المنتجات والفئة -- يتم إنشاؤها يدوياً
الفئة والفئة الفرعية -- يتم إنشاؤها يدوياً
المنتجات والفئة الفرعية -- يتم استنتاج العلاقة
ليتم تسلسل العلاقات تلقائياً، يجب أن تكون العلاقة في اتجاه واحد، كما هو موضح أعلاه. إذا كانت العلاقات الأولية على سبيل المثال بين "المبيعات" والمنتجات"، و"المنتجات" والعملاء"، فلن يتم استنتاج علاقة. ذلك لأن العلاقة بين "المنتجات" و"العملاء" هي علاقة كثير إلى كثير.