COUNT و SUM و AVG
COUNT, SUM, and AVG
COUNT و SUM و AVG
دوال التجميع تحول مجموعة صفوف إلى قيمة واحدة. COUNT(*) يعد الصفوف. SUM(amount) يجمع القيم. AVG(amount) يحسب المتوسط. هذه الدوال أساس التقارير: كم طلباً؟ ما إجمالي المبيعات؟ ما متوسط قيمة الطلب؟
انتبه إلى NULL. بعض دوال التجميع تتجاهل NULL في الأعمدة، بينما COUNT(*) يعد الصفوف كلها. لذلك اختر الدالة بناءً على السؤال. إذا أردت عدد الطلبات، استخدم COUNT(*). إذا أردت عدد القيم غير الفارغة في عمود، استخدم COUNT(column).
مثال عملي
الأسماء المستعارة تجعل التقرير مقروءاً. لا تترك الأعمدة الناتجة بأسماء مثل SUM(total_halalas) في تقرير دائم.
المال صحيح، AVG يُرجع كسراً
عقيدة هذا المساق: المال يُخزَّن دائماً كعدد صحيح من الهللات (INTEGER). لكن AVG يُرجع REAL (رقم عشري) حتى لو كان المدخل كله INTEGER. لاحظ الفرق في المثال: average_halalas_truncated يستخدم SUM/COUNT ويبقى عدداً صحيحاً (مع اقتطاع الباقي)، بينما average_halalas_real يستخدم AVG ويُرجع كسراً من الهللة.
AVG مقبول للتقارير والتحليلات حيث الكسر مفيد. لا يصلح كقيمة مال تُكتب في جدول معاملات أو فاتورة — اضرب أو دوّر إلى عدد صحيح من الهللات قبل التخزين، أو احسبه لحظة العرض فقط.