SQLحساب متوسط قيم العمود بواسطة الدالة AVG()
- الدالة
AVG()
- تجهيز قاعدة البيانات التي سنطبق عليها
- أمثلة حول استخدام الدالة
AVG()
الدالة AVG()
الدالة AVG() تستخدم للحصول على متوسط ( Average ) قيم الحقول الغير فارغة الموجودة في العمود.
طبعاً يمكن استخدام هذه الدالة مع القيم الرقمية فقط.
الشكل العام لإستخدامها
إذاً نستدعي الدالة AVG() مباشرةً بعد الكلمة SELECT.
إسم العمود الذي نريد الحصول على متوسط القيم الرقمية الموجودة فيه نكتبه بين أقواس الدالة مكان الكلمة column_name.
تجهيز قاعدة البيانات التي سنطبق عليها
قم بتنفيذ الإستعلام التالي حتى تنشئ قاعدة بيانات جديدة إسمها harmash
و تنشئ فيها جدول إسمه employees
يحتوي على بيانات 10 موظفين.
الإستعلام
بعد تنفيذ الإستعلام السابق في phpMyAdmin سيتم إنشاء قاعدة البيانات harmash
و إنشاء الجدول employees
بداخلها.
قم بالنقر على إسم قاعدة البيانات harmash
من القائمة اليسرى حتى تبدأ بالتعامل معها و تطبيق ما ستتعلمه في هذا الدرس.
البيانات التي قمنا بإضافتها بشكل إفتراضي في الجدول employees
.
id | first_name | last_name | is_married | salary | birthday |
---|---|---|---|---|---|
1 | Ahmad | Alhazem | 0 | 800.00 | 1990-10-23 |
2 | Rami | Algharib | 0 | 750.00 | 1992-05-08 |
3 | Said | Alnaja | 1 | 900.00 | 1988-07-12 |
4 | Noura | Jamali | 0 | 845.00 | 1994-12-04 |
5 | Amani | Sarrouf | 1 | 1000.00 | 1991-10-27 |
6 | Mhamad | Harmush | 0 | 700.00 | 1993-11-12 |
7 | Ahmad | Asaadi | 1 | 850.00 | 1995-03-10 |
8 | Mostafa | Shawki | 1 | 920.00 | 1990-02-14 |
9 | Jana | Alkassem | 0 | 780.00 | 1991-08-12 |
10 | Houssam | Zahrani | 1 | 880.00 | 1985-09-20 |
أمثلة حول استخدام الدالة AVG()
المثال الأول
الإستعلام التالي يقوم بعرض متوسط الرواتب التي يتم إعطاءها للموظفين في الشركة كل شهر.
ما فعلناه لحساب متوسط الرواتب هو حساب متوسط جميع الرواتب الموضوعة في العمود salary
.
الإستعلام
سنحصل على النتيجة التالية عند تنفيذ الإستعلام.
ملاحظة: الرقم يظهر فيه أكثر من رقمين بعد الفاصلة لأن عمليات الجمع و القسمة التي أجرتها الدالة AVG() أدت إلى إرجاع النتيجة بالنوع FLOAT.
Average Salary |
---|
842.500000 |
المثال الثاني
الإستعلام التالي هو نفس الإستعلام السابق تماماً مع فرق واحد و هو أننا قمنا بتعديل شكل القيمة التي سيتم إرجاعها في النتيجة بواسطة الدالة FORMAT() حتى تظهر رقمين فقط بعد الفاصلة لتكون مشابهة للرواتب المخزنة في العمود salary
.
الإستعلام
سنحصل على النتيجة التالية عند تنفيذ الإستعلام.
نلاحظ أن الرقم أصبح يظهر فيه رقمين فقط بعد الفاصلة.
Average Salary ($) |
---|
842.50 |
المثال الثالث
الإستعلام التالي يقوم بعرض متوسط الرواتب التي يتم إعطاءها للموظفين المتزوجين فقط كل شهر.
ما فعلناه لحساب متوسط رواتب المتزوجين فقط هو وضع شرط أن الحقل is_married
يجب أن يساوي 1
في السطر الذي سيتم حساب أخذ قيمة salary
منه.
إذاً, في أي سطر لا تكون قيمة الحقل is_married
تساوي 1
سيتم تجاهل الحقل salary
الموضوعة في نفس السطر.
كما أننا قمنا بتعديل شكل القيمة التي سيتم إرجاعها في النتيجة بواسطة الدالة FORMAT() حتى تظهر رقمين فقط بعد الفاصلة لتكون مشابهة للرواتب المخزنة في العمود salary
.
الإستعلام
سنحصل على النتيجة التالية عند تنفيذ الإستعلام.
Average Salary For Married ($) |
---|
910.50 |