قواعد البيانات: لغة SQL المتقدمة
لغة SQL (Structured Query Language) هي اللغة القياسية للتعامل مع قواعد البيانات العلائقية. بعد تعلم الأساسيات، ننتقل إلى استعلامات أكثر تقدماً تشمل الدوال التجميعية والتجميع والروابط (JOIN).
الدوال التجميعية (Fonctions d’agrégation)
- COUNT(): عدد السجلات. مثال: SELECT COUNT(*) FROM etudiants;
- SUM(): مجموع القيم. مثال: SELECT SUM(montant) FROM ventes;
- AVG(): متوسط القيم. مثال: SELECT AVG(note) FROM examens;
- MAX() / MIN(): القيمة القصوى/الدنيا.
التجميع (GROUP BY) والتصفية (HAVING)
يستخدم GROUP BY لتجميع السجلات حسب عمود معين. يستخدم HAVING لتصفية المجموعات (عكس WHERE الذي يصف السجلات قبل التجميع).
SELECT departement, COUNT(*) as nombre, AVG(salaire) as moyen
FROM employes
GROUP BY departement
HAVING COUNT(*) > 5;
الروابط (JOIN)
تستخدم JOIN لربط جدولين أو أكثر بناءً على علاقة بينهما:
- INNER JOIN: يعيد السجلات المتطابقة في كلا الجدولين.
- LEFT JOIN: يعيد كل سجلات الجدول الأيسر مع المطابقات من الجدول الأيمن.
- RIGHT JOIN: عكس LEFT JOIN.
SELECT e.nom, e.prenom, s.matiere, s.note
FROM etudiants e
INNER JOIN notes s ON e.id = s.etudiant_id;
تمارين تطبيقية
التمرين 1: اكتب استعلام SQL يعرض لكل قسم عدد الموظفين ومتوسط رواتبهم.
التمرين 2: اكتب استعلاماً يربط جدولي العملاء والطلبيات ويعرض أسماء العملاء الذين لديهم أكثر من 3 طلبيات.
التمرين 3: كيف تختلف WHERE عن HAVING؟ أعط مثالاً لكل منهما.
للمزيد من المعلومات، راجع درس الشبكات ودرس الذكاء الاصطناعي وتعلم الآلة.
📍 دروس مشابهة
- الإعلام الآلي — لغة C: المصفوفات ثنائية البعد — الثانية ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
- الإعلام الآلي — HTML5: إدراج الوسائط المتعددة (الصوت والفيديو) — الثانية ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.