Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

quantile

quantile

قُدِّمت في: v1.1.0

تحسب quantile تقريبيًا لتسلسل من البيانات الرقمية.

تستخدم هذه الدالة أخذ العينات بالخزان بحجم خزان يصل إلى 8192، إلى جانب مولّد أرقام عشوائية لأخذ العينات. والنتيجة غير حتمية. للحصول على quantile دقيق، استخدم الدالة quantileExact.

عند استخدام عدة دوال quantile* بمستويات مختلفة في استعلام، لا تُدمَج الحالات الداخلية (أي أن الاستعلام يعمل بكفاءة أقل مما يمكن أن يكون عليه). في هذه الحالة، استخدم الدالة quantiles.

لاحظ أنه بالنسبة إلى تسلسل رقمي فارغ، تُرجِع quantile القيمة NaN، لكن المتغيرات quantile* الخاصة بها تُرجِع إما NaN أو قيمة افتراضية لنوع التسلسل، وذلك حسب المتغير.

الصياغة

quantile(level)(expr)

الأسماء البديلة: median

المعلمات

  • level — اختياري. مستوى quantile. عدد ثابت بفاصلة عائمة من 0 إلى 1. نوصي باستخدام قيمة level ضمن النطاق [0.01, 0.99]. القيمة الافتراضية: 0.5. عند level=0.5 تحسب الدالة الوسيط. Float

الوسائط

القيمة المعادة

الـ quantile التقريبي للمستوى المحدد. تُنتج الوسائط الرقمية Float64، بينما تحتفظ وسائط Decimal وDate وDateTime وDateTime64 بتنسيق الإدخال الخاص بها. Float64 أو Decimal* أو Date أو DateTime أو DateTime64

أمثلة

حساب quantile

CREATE TABLE t (val UInt32) ENGINE = Memory;
INSERT INTO t VALUES (1), (1), (2), (3);

SELECT quantile(val) FROM t;
┌─quantile(val)─┐
│           1.5 │
└───────────────┘

انظر أيضًا

Navigation