بدءًا من الفهم الأساسي لماهية الاستعلامات الفرعية ولماذا تُعد أساسية، سنوسّع معرفتك من خلال دراسة الأنواع المختلفة للاستعلامات الفرعية، بما في ذلك…
بدءًا من الفهم الأساسي لماهية الاستعلامات الفرعية ولماذا تُعد أساسية، سنوسّع معرفتك من خلال دراسة الأنواع المختلفة للاستعلامات الفرعية، بما في ذلك الاستعلامات الفرعية أحادية الصف ومتعددة الصفوف والمرتبطة. كما توفّر هذه الدروس مقارنة مفصّلة بين الاستعلامات الفرعية وعمليات الربط، مما يساعدك على فهم مزاياها وعيوبها واتخاذ قرارات مدروسة بشأن استخدامها. ومع تقدّمنا، سنتعمّق أكثر في مفهوم الاستعلامات الفرعية المرتبطة، مستكشفين تفرّدها وحالات استخدامها الواقعية. وبنهاية هذه الدروس، ستكون مزوّدًا بالمعرفة والخبرة العملية لصياغة وتطبيق أنواع مختلفة من الاستعلامات الفرعية، مما يعزّز مهاراتك في حل المشكلات في استرجاع بيانات SQL.
في هذه الدروس عن الاستعلامات الفرعية، ستتعلّم عن آليات الاستعلامات الفرعية في SQL وكيف تُحدِث ثورة في استرجاع البيانات. سنستكشف مفهوم الاستعلامات الفرعية، ونتعمّق في أنواعها المختلفة بما في ذلك الاستعلامات الفرعية أحادية الصف ومتعددة الصفوف والمرتبطة، ونناقش الفروق بين الاستعلامات الفرعية وعمليات الربط. وبنهاية هذه الدروس، ستتمكّن من صياغة أنواع مختلفة من الاستعلامات الفرعية واستخدامها بفاعلية لحل مشكلات استرجاع البيانات المعقدة.
أهداف التعلّم:
- فهم كيفية استخدام الاستعلامات الفرعية لاسترجاع البيانات المعقدة
- اكتساب خبرة عملية بين الأنواع المختلفة للاستعلامات الفرعية
- تطبيق معرفتك لمعرفة متى تستخدم الاستعلامات الفرعية مقابل عمليات الربط
المهارات التي ستكتسبها
Database ProgrammingExtended SqlHierarchical And Recursive Queries In SQLNested QueriesQuery UnderstandingSQL (Programming Language)ما ستتعلمه
- فهم ما هي الاستعلامات الفرعية في SQL ولماذا تعد ضرورية لاسترجاع البيانات المعقدة
- تحديد الأنواع المختلفة للاستعلامات الفرعية، بما في ذلك الاستعلامات الفرعية ذات الصف الواحد، والصفوف المتعددة، والاستعلامات الفرعية المرتبطة
- مقارنة الاستعلامات الفرعية وعمليات الربط (Joins) لتحديد وقت استخدام كل منها
- استكشاف الاستعلامات الفرعية المرتبطة وحالات استخدامها في العالم الحقيقي
- كتابة وتطبيق الاستعلامات الفرعية في SQL لحل مشكلات استرجاع البيانات المعقدة
النقاط الرئيسية
- تمكن الاستعلامات الفرعية من استرجاع البيانات المعقدة ويمكن أن تحدث ثورة في كيفية الاستعلام عن البيانات في SQL.
- تأتي الاستعلامات الفرعية في عدة أنواع، بما في ذلك الاستعلامات الفرعية ذات الصف الواحد، والصفوف المتعددة، والاستعلامات الفرعية المرتبطة.
- تساعدك مقارنة الاستعلامات الفرعية وعمليات الربط (Joins) على فهم مزاياها وعيوبها واتخاذ قرارات مستنيرة بشأن استخدامها.
- تتمتع الاستعلامات الفرعية المرتبطة بسلوك فريد وتُطبق على حالات استخدام محددة في العالم الحقيقي.
- تجمع الدروس بين المعرفة المفاهيمية والخبرة العملية لصياغة وتطبيق الاستعلامات الفرعية.
الأسئلة الشائعة
ماذا سأتعلم في هذا المسار؟
ستتعلم آليات الاستعلامات الفرعية في SQL، وأنواعها المختلفة بما في ذلك الاستعلامات الفرعية ذات الصف الواحد، والصفوف المتعددة، والاستعلامات الفرعية المرتبطة، والفروق بين الاستعلامات الفرعية وعمليات الربط (Joins)، وكيفية صياغة وتطبيق الاستعلامات الفرعية لحل مشكلات استرجاع البيانات المعقدة.
ما أنواع الاستعلامات الفرعية التي يغطيها هذا المسار؟
يغطي المسار الاستعلامات الفرعية ذات الصف الواحد، والصفوف المتعددة، والاستعلامات الفرعية المرتبطة، كما يقارن بين الاستعلامات الفرعية وعمليات الربط (Joins).
هل يتضمن هذا المسار ممارسة عملية؟
نعم. توفر الدروس خبرة عملية تتيح لك صياغة وتطبيق أنواع مختلفة من الاستعلامات الفرعية، بما في ذلك درس حول كتابة الاستعلامات الفرعية في SQL.
ما المهارات التي سأكتسبها من هذا المسار؟
ستكتسب مهارات في برمجة قواعد البيانات، و SQL الموسع، والاستعلامات الهرمية والتكرارية في SQL، والاستعلامات المتداخلة، وفهم الاستعلامات، واستخدم SQL كلغة برمجة.
ما المواضيع التي تدرس في الدروس؟
تشمل الدروس مقدمة في الاستعلامات الفرعية، وأنواع الاستعلامات الفرعية، والاستعلامات الفرعية المرتبطة، والاستعلامات الفرعية مقابل عمليات الربط (Joins)، وكتابة الاستعلامات الفرعية في SQL.
النص
النص
في هذا الدرس، سنركز بشكل خاص على الاستعلامات الفرعية المترابطة. سنستكشف ماهيتها، وكيف تختلف عن الاستعلامات البسيطة، ومتى يتم استخدامها. لنبدأ بمراجعة سريعة للاستعلام الفرعي المرتبط. الاستعلام الفرعي المرتبط هو نوع من الاستعلام الفرعي الذي يستخدم قيمًا من الاستعلام الخارجي أو الاستعلام الرئيسي. بمعنى آخر، يتم تنفيذه بمجرد معالجة كل صف بواسطة الاستعلام الخارجي. لذلك بالنسبة لمثالنا الأساسي هنا، سنختار اسم اللاعب والمنصب منه طاولة اللاعبين. بمجرد أن يعثر استعلامنا الخارجي على تلك النتائج، فسوف يمضي قدمًا ويعالج استعلامنا الفرعي. هنا، سوف نستخدم جملة WHERE مع الكلمة الأساسية EXIST لنقول، بمجرد وجود هذه القيم، قم بالمضي قدمًا ومعالجة الاستعلام الفرعي الخاص بنا. لذا، هنا، سنقول اختر 1 أو ابحث لي عن صف إذا كان هذا مطابقًا. سنستخدم هذا من جدول الألعاب، والذي أطلقنا عليه الاسم المستعار G. وسنستخدم الاسم المستعار من جدول الألعاب والاسم المستعار P من جدول اللاعبين لنقول أن هذه الجداول مرتبطة بناءً على عمود معرف اللاعب. ثم أخيرًا، سنقول أين حصل اللاعب على أكثر من 7 تمريرات حاسمة. لذلك دعونا نمضي قدمًا ونقوم بتشغيل هذا بالضغط على CTRL ENTER. و يمكننا أن نرى هنا أنه لا يُرجع سوى عدد قليل من اللاعبين الذين يستوفون هذه المعايير بالفعل. بناءً على بنيتها، تختلف الاستعلامات الفرعية المرتبطة عن الاستعلامات الفرعية البسيطة أو غير المرتبطة. الاستعلام الفرعي البسيط مستقل عن الاستعلام الخارجي، ويتم تشغيله مرة واحدة فقط للعملية بأكملها أو للاستعلام نفسه. من ناحية أخرى، يرتبط الاستعلام الفرعي المرتبط بالاستعلام الخارجي أو الاستعلام الرئيسي، ويتم تشغيله مرة واحدة لكل صف تتم معالجته بواسطة الاستعلام الخارجي. كما يمكنك أن تتخيل، يمكن أن يؤدي هذا إلى نتائج مختلفة ويعني أيضًا أن الاستعلام الفرعي يمكن أن يكون أكثر كثافة في استخدام الموارد. لو نحاول تشغيل هذا المثال كاستعلام فرعي بسيط، وهذا يمكن أن يؤدي إلى نتائج مختلفة. وأيضًا، كما يمكنك أن تتخيل، يمكن أن تكون الاستعلامات الفرعية المرتبطة أكثر كثافة في استخدام الموارد أو تستهلك طاقة معالجة أكبر للعثور على كل هذه القيم. يرجى توخي الحذر عند كتابة هذه الاستعلامات لأنها قد يتم تنفيذها بشكل أبطأ من الاستعلامات الفرعية البسيطة، خاصة عندما تكون في قاعدة بيانات حقيقية تحتوي على آلاف أو حتى ملايين الصفوف. والآن دعونا نلقي نظرة على حالة استخدام أخرى. لنفترض أننا نريد العثور على جميع اللاعبين الذين سجلوا أكبر عدد من النقاط في المباراة. لتحقيق ذلك، سنستخدم اسم اللاعب. سنستخدم الدالة max في عمود النقاط. سنمضي قدمًا ونعطي هذا الاسم المستعار لأعلى الدرجات. ثم سنستخدم، في البداية، جدول اللاعبين، والذي سنسميه P. ثم سنستخدم صلة داخلية على طاولة الألعاب، والتي أطلقنا عليها اسم G. أخيرًا، نحن نستخدم الكلمة الأساسية on للسماح لنا بإنشاء الرابط بين هذه الجداول، والذي يعتمد على عمود معرف اللاعب، الموجود في كلا الجدولين. كل ذلك الآن فقط لتحديد معاييرنا أو الشروط التي يجب الوفاء بها. لذا سنستخدم هنا جملة أين مع النقاط. و الآن نريد إجراء استعلام فرعي على جملة المكان الخاصة بنا. لذا، سنقول هنا حدد الحد الأقصى من النقاط من جدول الألعاب، حيث يساوي معرف اللاعب معرف اللاعب من جدول اللاعبين. بعد ذلك، نظرًا لأننا نستخدم دالة مجمعة أو دالة max في عبارة التحديد الخاصة بنا، فهذا يعني أنه سيتعين علينا استخدام مجموعة حسب العبارة مع اسم اللاعب الخاص بنا. وأخيرًا، قررت الترتيب حسب الحد الأقصى للنقاط لدينا أو عمود الاسم المستعار لأعلى الدرجات لدينا بترتيب تنازلي، حتى نرى أعلى نقاط. لو لقد أنشأنا هذا الاستعلام بشكل صحيح، ومن المفترض أن يُرجع هذا اللاعبين وأعلى درجاتهم في اللعبة. لذلك دعونا نمضي قدما ونقوم بتشغيل هذا. وإذا نظرنا هنا، فإننا نرى صفًا واحدًا فقط لكل لاعب لأن هذه هي أعلى نتيجة حصلوا عليها خلال لعبة واحدة. على الرغم من أن الاستعلامات الفرعية المترابطة يمكن أن تكون صعبة بعض الشيء ويصعب فهمها، فهي مفيدة للغاية لاسترجاع البيانات المعقدة، خاصة بالنسبة للسيناريوهات التي عرضناها للتو. ترقبوا الدرس التالي، حيث نناقش الفرق بين الاستعلامات الفرعية والانضمامات. شكرا للمشاهدة.
التعلّم أثناء التنقّل
تعلّم أينما كنت — يتيح لك تطبيق KnowledgeCity للجوّال مشاهدة الدروس أثناء التنقّل.