recent
أخبار ساخنة

الدوال التجمعية في قواعد البيانات SQL الدرس |8|

الصفحة الرئيسية

الدوال التجمعية

هي عبارة عن دوال تستخدم لأكثر من صف في جملة الإستعلام SELECT لإخراج قيمة واحدة بعكس دوال الصف الواحد الذي تتعامل مع صف واحد لإخراج قيمة واحدة.

 

الدوال التجمعية لأكثر من صف

هي الدوال التي تتعامل مع بيانات مجموعة من الصفوف لإخراج قيمة واحدة فقط مثل عمل جمع لرواتب الموظفين او معرفة اكثير راتب يتم صرفة للموظف و كذالك أقل راتب يتم صرفه.

أنواع الدوال التجمعية

SUM : تُستخدم لإيجاد مجموع عدد من القيم.
MAX : تُستخدم لإيجاد اكبر قيمة من بين مجموع قيم.
MIN : تُستخدم لإيجاد اقل قيمة من بين مجموع قيم.
AVG : تُستخدم لإيجاد المتوسط الحسابي لمجموعة من القيم.
COUNT : تُستخدم لإيجاد عدد القيم او عدد الصفوف و كذلك تتجاهل القيم الفارغة NULL.
STDDEV DEVIATION : تُستخدم لإيجاد الإنحراف المعياري لمجموع من القيم.
VARIANCE : تستخدم لإيجاد مقدار التباين لمجموعة من القيم.
NVL : تستخدم لحل القيم الفارغة الموجودة في أي عمود لأن الدوال التجميعية تتجاهل القيم الفارغة.

عرض مجموع رواتب الموظفين و اكبر راتب و اقل راتب و المتوسط الحسابي للرواتب.
SQL> SELECT SUM(sal) , MAX(sal) , MIN(sal) , AVG(sal)
 2 FROM emp ;
 

ملاحظة هامة
كل من الدالتين MAX and MIN تتعامل مع جميع البيانات عند إستخدامها مع البيانات الحرفية و تكون النتيجة على حسب الترتيب الأبجدي.
 
مثال
عرض اول الأسماء الأبجدية و آخر الأسماء 
SQL> SELECT MAX(ename) , MIN(ename) 
 2 FROM emp ;
 

مثال
عرض المتوسط الحسابي لمكافات الموظفين 
SQL> SELECT AVG( NVL(comm , 0) )
 2 FROM emp ;
 

لقد تم إستخدام دالة NVL لكي يتم قسمة مجموع المكافئات على جميع الموظفين بما في ذلك القيم الفارغة يعني يتم القسمة على 14 موظف, أما إذا تم استخدام
SQL> SELECT AVG( comm )
 2 FROM emp ; 
 
فإنه سوف يتم القسمة على حقول الموظفين الذين يستلمون المكافئات فقط و سوف يتم تجاهل القيم الفارغة و سوف يكون الناتج يساوي 550.

التعامل مع دالة COUNT

• COUNT(*) . 
• COUNT(column)
 
الدالة ((*)COUNT) : تُستخدم لعد جميع الصفوف داخل الجدول بما في ذلك الصفوف المكررة و الصفوف التي تحتوي على قيم فارغة NULL و إذا كانت جملة الشرط where تحتوي على شرط فإنها تقوم بِعَد الصفوف على حسب جملة الشرط.
 
الدالة ((COUNT(column)) : تُستخدم لعد قيم أو بيانات عمود معين بما في ذلك البيانات المكررة مع تجاهل القيم الفارغة فقط NULL.

مثال
عرض إجمالي عدد الصفوف داخل جدول الموظفين و عدد الموظفين الذين يستلمون المكافئات و عدد الإدارات داخل عمود( deptno).
SQL> SELECT COUNT(*),COUNT(comm), COUNT(deptno) 
 2 FROM emp ; 
 

google-playkhamsatmostaqltradent