كيفية استخدام جملة MySQL HAVING حيث يكون المجموع أكبر من الحد الأدنى

Kyfyt Astkhdam Jmlt Mysql Having Hyth Ykwn Almjmw Akbr Mn Alhd Aladny



عند العمل مع قاعدة بيانات MySQL ، سيكون لديك غالبًا حالات تريد فيها تصفية القيم. على الرغم من أنه يمكنك استخدام جملة WHERE ، إلا أنها لا تعمل دائمًا مع جميع الحالات. يتم استخدام عبارة HAVING عندما تريد تنفيذ استعلام عامل تصفية باستخدام دالة تجميعية وتطبيق التجميعات.

تعتمد عبارة HAVING على عبارة GROUP BY في عامل التصفية الخاص بها وتنفذ الاستعلام بناءً على الشرط المقدم. يقيد عامل التصفية بناءً على الشرط ويعيد المجموعات المحددة فقط إذا كانت تفي بالشرط. لدينا أمثلة على استخدام جملة MySQL HAVING حيث يتجاوز المجموع الحد الأدنى. بهذه الطريقة ، ستتقن كيفية استخدامها في نهاية مشاركة اليوم.







كيفية استخدام جملة MySQL HAVING حيث يكون المجموع أكبر من الحد الأدنى

يمكنك تطبيق جملة MySQL HAVING مع عبارة GROUP BY. تركيبها كما يلي:



حدد تعبير 1 ، .. تعبير_ن ، تجميع_فونك (تعبير) من اسم_الجدول GROUP حسب التعبير HAVING ؛

يمكنك استخدام وظائف تجميعية مختلفة بما في ذلك SUM () و COUNT () و MIN () و MAX () و AVG (). لاحظ أنه يجب ذكر أي تعبير لم يتم استخدامه مع الدالة التجميعية مع عبارة GROUP BY.



بالنسبة للشرط ، يتم تطبيقه على النتائج المجمعة حيث تحدد الحد الذي تريد التحقق منه مع الشرط. على سبيل المثال ، يمكنك تطبيق الدالة SUM () والتحقق مما إذا كان التعبير يلبي الحد الأدنى من 10. وسنفهم المزيد عنه في الأمثلة المتوفرة.





لفهم كيفية عمل جملة HAVING ، دعنا ننشئ نموذج قاعدة بيانات سنعمل معها. نحن نطلق على قاعدة البيانات الخاصة بنا اسم 'تسجيل'.



لنقم أيضًا بإنشاء جدول باسم 'العمال' لاحتواء أنواع البيانات والأعمدة المختلفة الخاصة بنا. هنا ، نعمل مع بيانات العمال مثل الاسم والساعات وتاريخ العمل وما إلى ذلك.

من خلال التحقق من وصف الجدول الخاص بنا ، يمكننا التأكد من إنشاء جميع الأعمدة بنجاح.

نقوم بإدخال القيم في جدولنا. لدينا عمال مختلفون يعملون في ساعات وأيام مختلفة. باستخدام هذه البيانات ، يمكننا تطبيق شرط HAVING حيث يتجاوز المبلغ الحد الأدنى.

بالنسبة لمثالنا الأول ، دعنا نفكر في حالة نريد فيها العثور على العمال الذين عملوا معظم الساعات. بالنسبة لبند HAVING ، قم بتضمين دالة المجموع الكلي لساعات. في عبارة GROUP BY ، نقوم بتجميع الصفوف باستخدام صف الاسم للمساعدة في تصنيف العمال بإجمالي ساعات أكبر من الحد الأدنى.

إذا كان لدينا عتبة لإجمالي الساعات مثل 7 ، فإننا ننفذ أمرنا على النحو التالي:

حدد الاسم ، SUM (ساعات) AS total_hours_per_person من العاملين GROUP حسب الاسم HAVING sum (hours)> 7 ؛

من خلال تنفيذ الأمر ، نحصل على مخرجات تحتوي على صفين لأن عاملين فقط تجاوزا الحد المحدد في بند HAVING.

لنفترض أننا نريد تصنيف الأقسام لمعرفة أولئك الذين لديهم عمال يعملون في ساعات تزيد عن عتبة 7 ساعات. نختار القسم ، ثم نستخدم الدالة التجميعية SUM مع الساعات ونجمع الصفوف باستخدام تعبير القسم.

قيادتنا هي كما يلي:

حدد القسم ، SUM (بالساعات) AS total_hours_per_department من العاملين GROUP BY القسم لديهم المجموع (بالساعات)> 7 ؛

من النتائج ، يمكننا التحقق من أننا نجحنا في تصفية الصفوف لتترك فقط تلك التي يزيد مجموع ساعاتها عن الحد الأقصى.

وبالمثل ، إذا أردنا تصفية تاريخ العمل بأكبر عدد من العاملين العاملين يتجاوز حد 10 ساعات ، فإننا نختار تعبير تاريخ العمل. بعد ذلك ، نستخدم الدالة SUM مع الساعات ونجمع الصفوف باستخدام تاريخ العمل.

الأمر كما يلي:

حدد تاريخ العمل ، SUM (بالساعات) كأعلى_ساعات_العمل من العمال المجموعة حسب تاريخ العمل HAVING المجموع (بالساعات)> 10 ؛

بعد تنفيذ الأمر ، تظهر النتائج أن تاريخ عمل واحد فقط له مجموع الساعات التي تتجاوز الحد الأدنى:

خاتمة

يتم استخدام جملة MySQL HAVING عندما تريد تنفيذ استعلام عامل تصفية باستخدام دالة تجميعية. يتم دمجه مع عبارة GROUP BY لتنفيذ استعلام أكثر تحديدًا. يوضح هذا المنشور تفاصيل كل شيء عن جملة MySQL HAVING حيث يكون المجموع أكبر من الحد الأدنى. من خلال الأمثلة المقدمة ، أنت الآن تفهم كيفية التعامل مع جملة MySQL HAVING.