دالة AVG() في SQL
دالة AVG() تُستخدم لحساب المتوسط الحسابي لقيم عمود رقمي.
تُعد هذه الدالة مهمة جدًا في التحليل المالي والإحصائي، خصوصًا عند الحاجة لمعرفة متوسط الأسعار أو الكميات.
ملاحظة: القيم NULL يتم تجاهلها أثناء الحساب.
مثال أساسي
إيجاد متوسط الأسعار لجميع المنتجات:
SELECT AVG(Price)
FROM Products;
الصياغة (Syntax)
SELECT AVG(column_name)
FROM table_name
WHERE condition;
جدول Products (بيانات تجريبية)
| ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
|---|---|---|---|---|---|
| 1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
| 2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
| 3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
| 4 | Chef Anton's Cajun Seasoning | 2 | 2 | 48 - 6 oz jars | 22 |
| 5 | Chef Anton's Gumbo Mix | 2 | 2 | 36 boxes | 21.35 |
استخدام WHERE
إرجاع متوسط سعر المنتجات في الفئة رقم 1:
SELECT AVG(Price) AS [Average Price]
FROM Products
WHERE CategoryID = 1;
AVG() مع Alias
إعطاء اسم مخصص للعمود الناتج:
SELECT AVG(Price) AS [متوسط السعر]
FROM Products;
إرجاع المنتجات الأعلى من المتوسط
يمكن استخدام دالة AVG() داخل استعلام فرعي Subquery:
SELECT *
FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);
AVG() مع GROUP BY
إرجاع متوسط السعر لكل فئة (CategoryID):
SELECT AVG(Price) AS AveragePrice, CategoryID
FROM Products
GROUP BY CategoryID;
سؤال للتدريب
ما الذي تفعله دالة AVG() في SQL؟
- ❌ تُرجع مجموع القيم الرقمية في عمود
- ✅ تُرجع المتوسط الحسابي للقيم الرقمية في عمود
- ❌ تُرجع عدد الصفوف في الجدول
- ❌ تُرجع أكبر قيمة في عمود
هاشتاجات
#SQL #AVG #Aggregate_Functions #Database #تعلم_SQL #GroupBy #SalemNet
تعليقات
إرسال تعليق