SQL المتقدمة: Join و Group By
SQL تسمح باستعلامات معقدة تجمع بيانات من جداول متعددة.
1. JOIN
دمج صفوف من جدولين بناء على حقل مشترك. INNER JOIN: صفوف متطابقة في كلا الجدولين. LEFT JOIN: كل صفوف الجدول الأيسر + المتطابقة من الأيمن. RIGHT JOIN: العكس. FULL JOIN: كل الصفوف من كلا الجدولين.
2. GROUP BY
تجميع الصفوف حسب قيمة حقل. مع دوال التجميع: COUNT (عدد)، SUM (مجموع)، AVG (معدل)، MAX (أقصى)، MIN (أدنى).
3. HAVING
تصفية بعد GROUP BY (مشابهة WHERE لكن للمجموعات). مثال: SELECT department, AVG(salary) FROM employees GROUP BY department HAVING AVG(salary) > 50000.
4. أمثلة عملية
SELECT s.name, c.course_name FROM students s INNER JOIN enrollments e ON s.id = e.student_id INNER JOIN courses c ON e.course_id = c.id.
تمارين
- اكتب استعلاما يظهر عدد الطلاب في كل مادة.
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.