KnowledgeCity

SQL المستوى المتوسط: العلاقات بين الجداول

هنا، سنضع مفهوم علاقات الجداول في صدارة معرفتك بلغة SQL.

هنا، سنضع مفهوم علاقات الجداول في صدارة معرفتك بلغة SQL. بدءًا من استكشاف تطبيع قواعد البيانات، سنناقش بالتفصيل الأنواع المختلفة من العلاقات الموجودة داخل قواعد البيانات، بما في ذلك العلاقات واحد-لواحد، وواحد-لمتعدد، ومتعدد-لمتعدد. وتوسعًا في هذا الموضوع، سنركّز بعد ذلك على عمليات SQL JOIN، مستفيدين من وظائف INNER JOIN، وLEFT JOIN، وRIGHT JOIN، وFULL JOIN، وحتى SELF JOIN. ومن خلال تمارين عملية، ستكتسب خبرة تطبيقية في إنشاء الجداول العلائقية والتعامل معها. وستمكّنك الخبرة المكتسبة من تنفيذ عمليات JOIN المختلفة بثقة وكفاءة، مما يعزز قدرتك على إدارة قواعد البيانات المعقدة بفاعلية. وبحلول نهاية هذه الدروس، سيكون لديك فهم راسخ لعلاقات الجداول، وستصبح أكثر استعدادًا لحل المشكلات المعقدة المتعلقة بالبيانات في SQL.

في هذه الدروس حول علاقات الجداول، ستتعلم الأنواع المختلفة من علاقات الجداول وكيفية استخدامها بفاعلية. سنستكشف تطبيع قواعد البيانات، ونتعمق في تفاصيل عمليات SQL JOIN المختلفة، ونفهم أنواع العلاقات في قواعد البيانات: واحد-لواحد، وواحد-لمتعدد، ومتعدد-لمتعدد. وبحلول نهاية هذه الدروس، ستتمكن من إنشاء الجداول العلائقية والتعامل معها وتنفيذ عمليات JOIN المختلفة بثقة للوصول إلى بياناتك وإدارتها بكفاءة.

أهداف التعلم:

  • فهم أهمية أنواع علاقات الجداول
  • شرح كيفية ومتى تُستخدم أنواع JOIN
  • وصف فوائد استعلامات JOIN المُحسَّنة

المدرّب: Eric Grose

المدّة: 24m · 3 دروس
المستوى: Intermediate
اللغة: العربية

المهارات التي ستكتسبها

Database ModelingDatabase ProgrammingForeign KeysLinked TablesRelational DatabasesSQL (Programming Language)

ما ستتعلمه

  • فهم أهمية الأنواع المختلفة لعلاقات الجداول في قواعد البيانات
  • تحديد علاقات واحد إلى واحد، وواحد إلى متعدد، ومتعدد إلى متعدد
  • تطبيق عمليات SQL JOIN بما في ذلك INNER JOIN و LEFT JOIN و RIGHT JOIN و FULL JOIN و SELF JOIN
  • إنشاء الجداول العلاقاتية وتعديلها من خلال تمارين عملية
  • شرح كيفية ووقت استخدام كل نوع من أنواع الربط
  • وصف فوائد استعلامات الربط المحسّنة

النقاط الرئيسية

  • تعد تسوية قواعد البيانات هي نقطة البداية لفهم كيفية هيكلة علاقات الجداول.
  • تدعم قواعد البيانات ثلاثة أنواع رئيسية من العلاقات: واحد إلى واحد، وواحد إلى متعدد، ومتعدد إلى متعدد.
  • تشمل عمليات SQL JOIN كل من INNER JOIN و LEFT JOIN و RIGHT JOIN و FULL JOIN و SELF JOIN.
  • تبني التمارين العملية خبرة تطبيقية في إنشاء الجداول العلاقاتية وتعديلها.
  • تساعد استعلامات الربط المحسّنة في إدارة قواعد البيانات المعقدة بشكل أكثر فعالية وكفاءة.

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

ما الموضوعات التي يغطيها هذا المساق؟

يغطي المساق تسوية قواعد البيانات، وأنواع علاقات الجداول (واحد إلى واحد، وواحد إلى متعدد، ومتعدد إلى متعدد)، وعمليات SQL JOIN بما في ذلك INNER JOIN و LEFT JOIN و RIGHT JOIN و FULL JOIN و SELF JOIN.

ما المهارات التي سأكتسبها من هذا المساق؟

ستكتسب مهارات في نمذجة قواعد البيانات، وبرمجة قواعد البيانات، والمفاتيح الخارجية، والجداول المرتبطة، وقواعد البيانات العلاقاتية، وSQL، بما في ذلك القدرة على إنشاء الجداول العلاقاتية وتعديلها وإجراء عمليات JOIN المختلفة بثقة.

هل يتضمن هذا المساق تمارين عملية؟

نعم. من خلال التمارين العملية، تكتسب خبرة تطبيقية في إنشاء الجداول العلاقاتية وتعديلها وإجراء عمليات JOIN.

ما الدروس التي يتضمنها هذا المساق؟

يتضمن المساق ثلاثة دروس: فهم علاقات الجداول، واستكشاف عمليات الربط في SQL، وتطبيق علاقات الجداول في SQL.

ما الذي سأكون قادراً على فعله بنهاية هذا المساق؟

بنهاية المساق، ستكون قادراً على إنشاء الجداول العلاقاتية وتعديلها وإجراء عمليات JOIN المختلفة بثقة للوصول إلى بياناتك وإدارتها بكفاءة.

النص

النص

ستتعرف في هذه الدروس على أنواع مختلفة من علاقات الجداول في SQL. في هذا الدرس، سنغطي تسوية قاعدة البيانات والأنواع الثلاثة الأساسية من العلاقات الموجودة في قواعد البيانات. هذا يجري واحد إلى واحد، واحد - لكثير، وكثير - لكثير. تطبيع قاعدة البيانات هو عملية تنظيم البيانات في قاعدة بيانات لتجنب الازدواجية والتكرار وتحسين سلامة البيانات. الهدف من التطبيع هو تقسيم قاعدة البيانات إلى جدولين أو أكثر وتحديد العلاقات بين هذه الجداول لتقليل تكرار البيانات. في كثير من الأحيان، عند تصميم قاعدة بيانات، تريد إنشاء رسم تخطيطي. في هذا الدرس، سأستخدم أداة موجودة على QuickDatabaseDiagrams .com، وهي أداة مجانية وتسمح لنا بتخطيط قاعدة البيانات الخاصة بنا. الآن، بالنسبة لهذه الأداة، يختلف بناء الجملة قليلاً عن SQL التقليدي. لا يزال بإمكاننا استخدام رمز الهاشتاج لتقديم التعليقات أو الملاحظات داخل الكود الخاص بنا، ولكن لإدراج اسم الجدول، فإننا ببساطة نعطيه اسمًا، متبوعة بشرطة على السطر التالي. و ومن هنا ندرج أسماء أعمدتنا. لذلك بالنسبة للعمود الأول هنا، سيتم تصنيفنا على هوية الطالب، نوع بيانات العمود، في هذه الحالة عدد صحيح، وكذلك إذا كان هناك أي قيد على المفتاح الأساسي أو المفتاح الخارجي. وأيضاً ضمن جدول الطلاب، سنقوم بإدراج أسمائهم الأولى كنوع بيانات VARCHAR يصل إلى 100 حرف، وكذلك الاسم الأخير للطالب وهذا أيضًا نوع بيانات VARCHAR وما يصل إلى 100 حرف. بعد ذلك، سنقوم بإنشاء جدول تفاصيل الطالب، والذي يوفر معلومات أكثر تفصيلاً عن هؤلاء الطلاب. سيحتوي هذا الجدول أيضًا على معرف الطالب نوع بيانات عدد صحيح. وفي هذه الحالة النادرة، فهو مفتاح أساسي ومفتاح خارجي. عند استخدام هذه الأداة لتحديد علاقاتنا، نحن ندرج هذا هنا. في هذه الحالة، هذا واحد لواحد. ثم نقوم بإدراج العلاقة بالجدول، في هذه الحالة، جدول الطالب بناءً على عمود معرف الطالب. يحتوي هذا العمود أيضًا على العنوان، وهو نوع بيانات VARCHAR 100. وأخيرًا المدينة التي يقيم فيها الطالب، أيضًا نوع بيانات VARCHAR مكون من 100 حرف. لذا الآن دعونا ندخل في علاقات فردية. تحدث علاقات رأس برأس عندما يرتبط سجل واحد في جدول بسجل واحد فقط في جدول آخر. لذا، في هذا المثال، كل طالب لديه معرف طالب واحد فقط و يتم تخصيص كل معرف طالب لشخص واحد فقط. نرى علاقتنا مرسومة هنا، حيث يتطابق معرف طالب واحد مع معرف طالب واحد، والذي يتطابق في نهاية اليوم مع شخص واحد. من أجل مناقشة علاقة واحدة مع عدة علاقات، فلنبدأ في إنشاء جدول العملاء والطلبات. لذلك، مرة أخرى، نحدد اسم العميل. في هذه الحالة، قمت بإضافة اسم مستعار. أولا نحدد إسم الجدول وهو العملاء. وفي هذا السيناريو، أضفت اسمًا مستعارًا لـ C، مما سيجعله أقصر عندما نحاول تحديد علاقاتنا. بالنسبة لهذا الجدول، لدينا معرف العميل من نوع البيانات الصحيحة والمفتاح الأساسي. ومرة أخرى، لدينا اسم أول واسم عائلة لنوع بيانات VARCHAR يصل إلى 100 حرف. بعد ذلك، سوف نحدد جدول الطلبات الخاص بنا. وسأعطي هذا الاسم المستعار لـ O. ال المفتاح الأساسي لهذا الجدول هو معرف الطلب وهو من نوع بيانات عدد صحيح. سنضيف عمودًا جديدًا بعنوان تاريخ الطلب وسنعطيه نوع بيانات التاريخ. وأخيرًا، لدينا أيضًا معرف العميل في هذا الجدول، وهو عدد صحيح بالإضافة إلى قيد المفتاح الخارجي. سيقوم معرف العميل هذا بربط هذين الجدولين معًا. الآن، عند تعريف علاقتنا هنا، بدلًا من مجرد شرطة، يجب أن يكون لدينا أكبر من الإشارة أو تعريف الواحد للكثيرين. نحن هنا نستخدم الاسم المستعار لـ C و إدراج معرف العميل. أنت يمكنهم رؤية هذا ينعكس في تصورنا مع معرف العميل الخاص بهم للعديد من معرفات العملاء في عمود معرف الطلب. حسنًا، دعونا نقسم العلاقات من علاقة إلى عدة علاقات. هذه هي أنواع العلاقات الأكثر شيوعًا في SQL. في علاقة رأس بأطراف، سجل في جدول واحد وسجلات متطابقة متعددة في جدول آخر. لذلك في هذا المثال، يمكن لعميل واحد تقديم العديد من الطلبات، لكن الطلب لا يمكن أن ينتمي إلا إلى عميل واحد فقط. لذلك، يتم تحديد هذه العلاقة من خلال قدرة عميل واحد على تقديم العديد من الطلبات. أخيرًا، دعونا نناقش العديد من العلاقات. وللقيام بذلك، سنحتاج إلى إضافة بضعة جداول أخرى. سنمضي قدمًا وننشئ الاسم المستعار لجدول المنتجات SP. يحتوي هذا الجدول على معرف المنتج وهو عبارة عن عدد صحيح والمفتاح الأساسي لهذا الجدول، بالإضافة إلى اسم المنتج ونوع بيانات المخطط الشريطي وما يصل إلى 100 حرف. ثم سنقوم بإنشاء جدول تفاصيل الطلب ونطلق عليه اسم OD. ل هذا الجدول، معرف الطلب كنوع بيانات عدد صحيح ويحتوي على مفتاح أساسي بالإضافة إلى أنه يعمل كمفتاح خارجي لمعرف الطلب في جدول الطلبات. عند تعريف علاقتنا هنا، لدينا علامات أكبر من وأقل من مع شرطة في المنتصف للدلالة على كثير للكثيرين. وينطبق الشيء نفسه على عمود معرف المنتج، وهو عدد صحيح مثل وكذلك المفتاح الأساسي وقيد المفتاح الخارجي مع العلاقة من كثير إلى كثير، وهو معرف المنتج في جدول المنتجات. وأخيرًا، لدينا عمود الكمية، وهو عدد صحيح. الآن أن لدينا جداولنا، دعونا نناقش العديد من العلاقات بمزيد من التفصيل. يتم تعريف العلاقة من كثير إلى متعدد على أنها عندما ترتبط سجلات متعددة في جدول بسجلات متعددة في جدول آخر. لذا، في هذا المثال، يمكن أن يكون منتج واحد في العديد من الطلبات ويمكن أن يحتوي الطلب الواحد على العديد من المنتجات. للتعامل مع العديد من العلاقات، نحتاج إلى تقديم ما يسمى بالوصلة أو جدول الجسر. يتضمن هذا الجدول مفتاحًا أساسيًا من كل جدول من الجداول التي نرتبط بها. لذا، في هذا المثال، سيكون جدول تفاصيل الطلب الخاص بنا هو جدول الوصلات لأنه يربط جدول الطلبات وجدول المنتجات معًا. عند تصميم قاعدة بيانات، من الضروري فهم هذه الأنواع من العلاقات لتحديد البنية المنطقية لبياناتك. أيضًا، لن نستخدم هذا، ولكن لنفترض أنه في سيناريو العالم الحقيقي، قمنا بتحديد مخططنا ونريد تصديره. نحن ببساطة نضغط على التصدير هنا، قم بإدراج MySQL أو أي مزود SQL تستخدمه، وسوف يقوم بإنشاء جميع بيانات جدول الإنشاء بالإضافة إلى العلاقات بينها. هذه أداة مفيدة لتسريع عملية تصميم قاعدة البيانات لدينا. ترقبوا الدرس التالي حيث نكتب استعلامات الانضمام حتى نتمكن من استرداد البيانات من جداول متعددة. شكرا للمشاهدة.

التعلّم أثناء التنقّل

تعلّم أينما كنت — يتيح لك تطبيق KnowledgeCity للجوّال مشاهدة الدروس أثناء التنقّل.