Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

avgIf

الوصف

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

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

في هذا المثال، سننشئ جدولًا يخزّن بيانات المبيعات مع مؤشرات النجاح، وسنستخدم avgIf لحساب متوسط قيمة البيع للمعاملات الناجحة.

Querysql
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.

Responseresponse
   ┌─avg_successful_sale─┐
1. │              193.88 │
   └─────────────────────┘

راجع أيضًا

Navigation