تُستخدم الدالة MySQL count() لإرجاع عدد التعبيرات. يسمح لنا بإحصاء جميع الصفوف أو بعض صفوف الجدول التي تطابق شرطًا محددًا فقط. إنه نوع من الوظائف المجمعة ونوع الإرجاع الخاص بها هو BIGINT. ترجع هذه الدالة 0 إذا لم تجد أي صفوف مطابقة.
يمكننا استخدام دالة العد في ثلاثة أشكال، كما هو موضح أدناه:
- عدد (*)
- العد (التعبير)
- العدد (متميز)
دعونا نناقش كل بالتفصيل.
وظيفة الكونت (*): تستخدم هذه الدالة عبارة SELECT لإرجاع عدد الصفوف في مجموعة النتائج. تحتوي مجموعة النتائج على كافة الصفوف غير الخالية والفارغة والمكررة.
وظيفة الكونت (التعبير): تقوم هذه الدالة بإرجاع مجموعة النتائج دون احتواء صفوف فارغة كنتيجة للتعبير.
COUNT (تعبير مميز) الوظيفة: تقوم هذه الدالة بإرجاع عدد الصفوف المميزة دون أن تحتوي على قيم فارغة كنتيجة للتعبير.
بناء الجملة
فيما يلي بناء جملة الدالة COUNT():
هل يمكن للاندرويد لعب لعبة الحمامة
SELECT COUNT (aggregate_expression) FROM table_name [WHERE conditions];
شرح المعلمة
التعبير التجميعي: فهو يحدد العمود أو التعبير الذي سيتم حساب قيمه NON-NULL.
اسم الطاولة: فهو يحدد الجداول التي تريد استرداد السجلات منها. يجب أن يكون هناك جدول واحد على الأقل مدرج في جملة FROM.
حيث الشروط: إنه اختياري. ويحدد الشروط التي يجب استيفاؤها حتى يتم اختيار السجلات.
مثال على دالة MySQL count()
خذ بعين الاعتبار جدولًا يسمى 'الموظفون' والذي يحتوي على البيانات التالية.
دعونا نفهم كيف تعمل وظائف count() ماي إس كيو إل .
مثال 1
قم بتنفيذ الاستعلام التالي الذي يستخدم الدالة COUNT(تعبير) لحساب إجمالي عدد أسماء الموظفين المتوفرة في الجدول:
تخفيض الحواشي السفلية
mysql> SELECT COUNT(emp_name) FROM employees;
انتاج:
مثال2
قم بتنفيذ العبارة التالية التي تقوم بإرجاع كافة الصفوف من جدول الموظفين وتحدد عبارة WHERE الصفوف التي تكون قيمتها في العمود emp_age أكبر من 32:
mysql> SELECT COUNT(*) FROM employees WHERE emp_age>32;
انتاج:
مثال3
يستخدم هذا البيان الدالة COUNT(تعبير مميز) التي تحسب الصفوف غير الخالية والصفوف المميزة في العمود emp_age:
mysql> SELECT COUNT(DISTINCT emp_age) FROM employees;
انتاج:
وظيفة MySQL Count() مع GROUP BY Clause
يمكننا أيضًا استخدام الدالة count() مع جملة GROUP BY التي تُرجع عدد العناصر في كل مجموعة. على سبيل المثال، ترجع العبارة التالية عدد الموظفين في كل مدينة:
mysql> SELECT emp_name, city, COUNT(*) FROM employees GROUP BY city;
وبعد التنفيذ الناجح سنحصل على النتيجة كما يلي:
وظيفة MySQL Count() مع شرط HAVING وORDER BY
دعونا نرى جملة أخرى تستخدم ORDER BY وHaving مع الدالة count(). قم بتنفيذ العبارة التالية التي تعطي اسم الموظف الذي لديه على الأقل نفس السن وفرزها بناءً على نتيجة العد:
الحصول على طول المصفوفة في ج
mysql> SELECT emp_name, emp_age, COUNT(*) FROM employees GROUP BY emp_age HAVING COUNT(*)>=2 ORDER BY COUNT(*);
سيعطي هذا البيان الإخراج على النحو التالي: