الانتقال إلى المحتوى الرئيسي

الوصف

يمكن تطبيق المُركِّب If على الدالة avg لحساب المتوسط الحسابي للقيم في الصفوف التي يكون فيها الشرط true، باستخدام دالة المُركِّب التجميعي avgIf.

مثال على الاستخدام

في هذا المثال، سننشئ جدولًا يخزّن بيانات المبيعات مع مؤشرات النجاح، وسنستخدم avgIf لحساب متوسط قيمة البيع للمعاملات الناجحة.
Query
CREATE TABLE sales(
    transaction_id UInt32,
    amount Decimal(10,2),
    is_successful UInt8
) ENGINE = MergeTree
ORDER BY ();

INSERT INTO sales VALUES
    (1, 100.50, 1),
    (2, 200.75, 1),
    (3, 150.25, 0),
    (4, 300.00, 1),
    (5, 250.50, 0),
    (6, 175.25, 1);

SELECT
    avgIf(amount, is_successful = 1) AS avg_successful_sale
FROM sales;
ستحسب الدالة avgIf متوسط المبلغ فقط للصفوف التي تكون فيها is_successful = 1. في هذه الحالة، ستحسب متوسط المبالغ التالية: 100.50 و200.75 و300.00 و175.25.
Response
   ┌─avg_successful_sale─┐
1. │              193.88 │
   └─────────────────────┘

راجع أيضًا

آخر تعديل في ٢٩ يونيو ٢٠٢٦