الدرس 24: الدوال التجميعية (COUNT, SUM, AVG, MIN, MAX)
تُجري الدوال التجميعية (Aggregate Functions) عملية حسابية على مجموعة من الصفوف وتعيد قيمة ملخصة واحدة. هذه الدوال ضرورية لإعداد التقارير والتحليل.
الدوال الخمس الرئيسية
- COUNT(): تحسب عدد الصفوف في المجموعة.
- SUM(): تحسب مجموع القيم في عمود رقمي.
- AVG(): تحسب القيمة المتوسطة لعمود رقمي.
- MIN(): تعثر على أصغر قيمة في عمود.
- MAX(): تعثر على أكبر قيمة في عمود.
مثال 1: حساب الإجماليات والأعداد
البحث عن العدد الإجمالي للمنتجات، وأعلى سعر، والقيمة الإجمالية للمخزون.
sql SELECT COUNT(*) AS TotalProducts, -- يحسب جميع الصفوف MAX(Price) AS HighestPrice, SUM(Price * StockQuantity) AS TotalStockValue FROM Products;
COUNT(*) vs. COUNT(ColumnName)
COUNT(*): يحسب كل صف، بما في ذلك تلك التي تحتوي على قيمNULLفي أعمدة أخرى.COUNT(ColumnName): يحسب فقط الصفوف التي يكون فيهاColumnNameالمحدد ليس NULL.
مثال 2: عد القيم المميزة (Distinct Values)
إذا كنت تريد حساب عدد الأقسام الفريدة الموجودة، فاستخدم DISTINCT.
sql SELECT COUNT(DISTINCT Department) FROM Employees;