Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

الدوال التجميعية

يدعم ClickHouse جميع دوال SQL التجميعية القياسية (sum، avg، min، max، count)، بالإضافة إلى نطاق واسع من الدوال التجميعية الأخرى.

الصفحة الوصف
groupFormat تنسّق الصفوف في كل مجموعة باستخدام تنسيق الإخراج وتُرجع البيانات المنسّقة كسلسلة نصية.
aggThrow يمكن استخدام هذه الدالة لاختبار سلامة الاستثناءات. وستُطلق استثناءً عند إنشائها بالاحتمال المحدد.
analysisOfVariance توفّر اختبارًا إحصائيًا لتحليل التباين أحادي الاتجاه (اختبار ANOVA). وهو اختبار يُجرى على عدة مجموعات من الملاحظات ذات التوزيع الطبيعي لمعرفة ما إذا كانت جميع المجموعات لها المتوسط نفسه أم لا.
any تختار أول قيمة تتم مواجهتها في عمود.
anyHeavy تختار قيمة كثيرة التكرار باستخدام خوارزمية heavy hitters. إذا كانت هناك قيمة تظهر في أكثر من نصف الحالات في كل خيوط تنفيذ الاستعلام، فستُعاد هذه القيمة. وعادةً ما تكون النتيجة غير حتمية.
anyLast تختار آخر قيمة تتم مواجهتها في عمود.
approx_top_k تُرجع مصفوفة من القيم الأكثر تكرارًا على نحو تقريبي وتكراراتها في العمود المحدد.
approx_top_sum تُرجع مصفوفة من القيم الأكثر تكرارًا على نحو تقريبي وتكراراتها في العمود المحدد.
argAndMax تحسب قيمة arg وval لأقصى قيمة val. وإذا كانت هناك عدة صفوف لها نفس val بوصفها القيمة العظمى، فإن تحديد أيٍّ من arg وval المرتبطين بها سيُعاد ليس حتميًا.
argAndMin تحسب قيمة arg وval لأدنى قيمة val. وإذا كانت هناك عدة صفوف لها نفس val بوصفها القيمة الصغرى، فإن تحديد أيٍّ من arg وval المرتبطين بها سيُعاد ليس حتميًا.
argMax تحسب قيمة arg لأقصى قيمة val.
argMin تحسب قيمة arg لأدنى قيمة val. وإذا كانت هناك عدة صفوف لها نفس val بوصفها القيمة العظمى، فإن تحديد أيٍّ من arg المرتبط بها سيُعاد ليس حتميًا.
avg تحسب المتوسط الحسابي.
avgWeighted تحسب المتوسط الحسابي المرجّح.
boundingRatio دالة تجميع تحسب الميل بين النقطتين الواقعتين في أقصى اليسار وأقصى اليمين ضمن مجموعة من القيم.
categoricalInformationValue تحسب قيمة (P(tag = 1) - P(tag = 0))(log(P(tag = 1)) - log(P(tag = 0))) لكل فئة.
contingency تحسب الدالة contingency معامل التوافق، وهو قيمة تقيس الارتباط بين عمودين في جدول. وهذا الحساب مشابه لدالة cramersV، لكنه يستخدم مقامًا مختلفًا في الجذر التربيعي.
corr تحسب معامل ارتباط بيرسون.
corrMatrix تحسب مصفوفة الارتباط لمتغيرات عددها N.
corrStable تحسب معامل ارتباط بيرسون، لكنها تستخدم خوارزمية مستقرة عدديًا.
count تحسب عدد الصفوف أو القيم غير NULL.
covarPop تحسب التباين المشترك للمجتمع الإحصائي
covarPopMatrix تُرجع مصفوفة التباين المشترك للمجتمع الإحصائي لمتغيرات عددها N.
covarPopStable تحسب قيمة التباين المشترك للمجتمع الإحصائي
covarSamp تحسب قيمة Σ((x - x̅)(y - y̅)) / (n - 1)
covarSampMatrix تُرجع مصفوفة التباين المشترك للعينة لمتغيرات عددها N.
covarSampStable تشبه covarSamp لكنها تعمل ببطء أكبر مع تقديم خطأ حسابي أقل.
cramersV تتراوح نتيجة الدالة cramersV بين 0 (وهو ما يقابل عدم وجود ارتباط بين المتغيرات) و1، ولا يمكن أن تصل إلى 1 إلا عندما تكون كل قيمة محددة بالكامل بواسطة الأخرى. ويمكن النظر إليها على أنها الارتباط بين متغيرين كنسبة مئوية من أقصى تباين ممكن بينهما.
cramersVBiasCorrected تحسب Cramer's V، لكنها تستخدم تصحيح الانحياز.
deltaSum تجمع الفرق الحسابي بين الصفوف المتتالية.
deltaSumTimestamp تجمع الفرق بين الصفوف المتتالية. وإذا كان الفرق سالبًا، فسيتم تجاهله.
distinctDynamicTypes يحسب قائمة أنواع البيانات المميزة المخزنة في عمود Dynamic.
distinctJSONPaths يحسب قائمة المسارات المميزة المخزنة في عمود JSON.
distinctJSONPathsAndTypes يحسب قائمة المسارات المميزة وأنواعها المخزنة في JSON.
entropy يحسب Shannon entropy لعمود من القيم.
estimateCompressionRatio يقدّر نسبة الضغط لعمود معيّن من دون ضغطه.
exponentialMovingAverage يحسب المتوسط المتحرك الأسي للقيم عند الزمن المحدد.
exponentialTimeDecayedAvg يعيد متوسطًا متحركًا مرجحًا منعمًا أسيًا لقيم سلسلة زمنية عند النقطة الزمنية t.
exponentialTimeDecayedCount يعيد الاضمحلال الأسي التراكمي عبر سلسلة زمنية عند الفهرس الزمني t.
exponentialTimeDecayedMax يعيد القيمة العظمى للمتوسط المتحرك المنعم أسيًا المحسوب عند الفهرس الزمني t مقارنةً بقيمته عند t-1.
exponentialTimeDecayedSum يعيد مجموع قيم المتوسط المتحرك المنعم أسيًا لسلسلة زمنية عند الفهرس الزمني t.
first_value هو اسم بديل لـ any، وقد أُضيف للتوافق مع window functions، إذ يلزم أحيانًا معالجة قيم NULL (افتراضيًا، تتجاهل جميع الدوال التجميعية في ClickHouse قيم NULL).
flameGraph دالة تجميعية تنشئ flamegraph باستخدام قائمة من stacktraces.
groupArray ينشئ مصفوفة من قيم الوسيط. ويمكن إضافة القيم إلى المصفوفة بأي ترتيب (غير محدد).
groupArrayArray يجمّع المصفوفات في مصفوفة أكبر تضم هذه المصفوفات.
groupArrayInsertAt يُدرج قيمة في المصفوفة عند الموضع المحدد.
groupArrayIntersect يعيد تقاطع المصفوفات المعطاة (أي جميع العناصر الموجودة في كل المصفوفات المعطاة).
groupArrayLast ينشئ مصفوفة من آخر قيم الوسيط.
groupArrayMovingAvg يحسب المتوسط المتحرك لقيم الإدخال.
groupArrayMovingSum يحسب المجموع المتحرك لقيم الإدخال.
groupArraySample ينشئ مصفوفة من قيم وسيط مأخوذة كعينة. يقتصر حجم المصفوفة الناتجة على max_size عنصرًا. وتُختار قيم الوسيط وتُضاف إلى المصفوفة عشوائيًا.
groupArraySorted يعيد مصفوفة تحتوي على أول N عنصرًا بترتيب تصاعدي.
groupBitAnd يطبّق العملية البتّية AND على سلسلة من الأرقام.
groupBitmap يجري حسابات bitmap أو Aggregate انطلاقًا من عمود أعداد صحيحة غير موقّعة، ويعيد cardinality من النوع UInt64، وإذا أُضيفت اللاحقة -State فإنه يعيد Bitmap object.
groupBitmapAnd يجري حساب AND لعمود bitmap، ويعيد cardinality من النوع UInt64، وإذا أُضيفت اللاحقة -State فإنه يعيد Bitmap object.
groupBitmapOr يجري حساب OR لعمود bitmap، ويعيد cardinality من النوع UInt64، وإذا أُضيفت اللاحقة -State فإنه يعيد Bitmap object. وهذا مكافئ لـ groupBitmapMerge.
groupBitmapXor يحسب XOR لعمود bitmap، ويعيد cardinality من النوع UInt64، وإذا استُخدم مع اللاحقة -State فإنه يعيد Bitmap object.
groupBitOr يطبّق العملية البتّية OR على سلسلة من الأرقام.
groupBitXor يطبّق العملية البتّية XOR على سلسلة من الأرقام.
groupConcat يحسب سلسلة نصية مضمومة من مجموعة من السلاسل النصية، مع إمكانية الفصل بينها بمحدد اختياري، ومع إمكانية تقييدها اختياريًا بعدد أقصى من العناصر.
groupUniqArray ينشئ مصفوفة من قيم وسيط مختلفة.
intervalLengthSum يحسب الطول الإجمالي لاتحاد جميع النطاقات (المقاطع على المحور العددي).
kolmogorovSmirnovTest يطبّق اختبار Kolmogorov-Smirnov على عينات من مجتمعين.
kurtPop يحسب التفلطح لتسلسل.
kurtSamp يحسب تفلطح العينة لتسلسل.
largestTriangleThreeBuckets يطبّق خوارزمية Largest-Triangle-Three-Buckets على بيانات الإدخال.
last_value يختار آخر قيمة تمت مصادفتها، على نحو مشابه لـ anyLast، لكنه يمكنه قبول NULL أيضًا.
mannWhitneyUTest يطبّق اختبار Mann-Whitney للرتب على عينات من مجتمعين.
max دالة تجميع تحسب القيمة العظمى عبر مجموعة من القيم.
maxIntersections دالة تجميع تحسب الحد الأقصى لعدد مرات تقاطع مجموعة من الفترات مع بعضها البعض (إذا كانت جميع الفترات تتقاطع مرة واحدة على الأقل).
maxIntersectionsPosition دالة تجميع تحسب مواضع ظهور الدالة maxIntersections.
maxMap تحسب القيمة العظمى من المصفوفة value وفقًا للمفاتيح المحددة في المصفوفة key.
meanZTest يطبّق mean z-test على عينات من مجتمعين.
median دوال median* هي أسماء مستعارة للدوال quantile* المناظرة. وتحسب الوسيط لعينة بيانات رقمية.
min دالة تجميع تحسب القيمة الصغرى عبر مجموعة من القيم.
minMap تحسب القيمة الصغرى من المصفوفة value وفقًا للمفاتيح المحددة في المصفوفة key.
quantile تحسب quantile تقريبيًا لتسلسل بيانات رقمية.
quantileBFloat16 تحسب quantile تقريبيًا لعينة تتكوّن من أعداد bfloat16.
quantileDD تحسب quantile تقريبيًا لعينة مع ضمانات للخطأ النسبي.
quantileDeterministic تحسب quantile تقريبيًا لتسلسل بيانات رقمية.
quantileExact Functions الدوال quantileExact و quantileExactLow و quantileExactHigh و quantileExactExclusive و quantileExactInclusive
quantileExactExclusive تحسب quantile بدقة لتسلسل بيانات رقمية.
quantileExactHigh على نحو مماثل لـ quantileExact، تحسب هذه الدالة quantile بدقة لتسلسل بيانات رقمية.
quantileExactInclusive تحسب quantile بدقة لتسلسل بيانات رقمية.
quantileExactLow على نحو مماثل لـ quantileExact، تحسب هذه الدالة quantile بدقة لتسلسل بيانات رقمية.
quantileExactWeighted تحسب quantile بدقة لتسلسل بيانات رقمية، مع أخذ وزن كل عنصر في الاعتبار.
quantileExactWeightedInterpolated تحسب quantile لتسلسل بيانات رقمية باستخدام linear interpolation، مع أخذ وزن كل عنصر في الاعتبار.
quantileGK تحسب quantile لتسلسل بيانات رقمية باستخدام خوارزمية Greenwald-Khanna.
quantileInterpolatedWeighted تحسب quantile لتسلسل بيانات رقمية باستخدام linear interpolation، مع أخذ وزن كل عنصر في الاعتبار.
quantilePrometheusHistogram تحسب quantile لمُدرَّج تكراري باستخدام linear interpolation.
quantiles Functions الدوال quantiles و quantilesExactExclusive و quantilesExactInclusive و quantilesGK
quantilesExactExclusive يحسب قيم quantiles لتسلسل بيانات رقمية بدقة.
quantilesExactInclusive يحسب قيم quantiles لتسلسل بيانات رقمية بدقة.
quantilesGK تعمل quantilesGK بطريقة مشابهة لـ quantileGK، لكنها تتيح حساب quantiles عند مستويات مختلفة في الوقت نفسه وتُرجع مصفوفة.
quantilesTimingWeighted باستخدام الدقة المحددة، تحسب quantile لتسلسل بيانات رقمية وفقًا لوزن كل عنصر في التسلسل.
quantileTDigest تحسب quantile تقريبيًا لتسلسل بيانات رقمية باستخدام خوارزمية t-digest.
quantileTDigestWeighted تحسب quantile تقريبيًا لتسلسل بيانات رقمية باستخدام خوارزمية t-digest.
quantileTiming باستخدام الدقة المحددة، تحسب quantile لتسلسل بيانات رقمية.
quantileTimingWeighted باستخدام الدقة المحددة، تحسب quantile لتسلسل بيانات رقمية وفقًا لوزن كل عنصر في التسلسل.
rankCorr يحسب معامل الارتباط الرتبي.
simpleLinearRegression يُجري انحدارًا خطيًا بسيطًا (أحادي البعد).
singleValueOrNull تُستخدم الدالة التجميعية singleValueOrNull لتنفيذ معاملات الاستعلامات الفرعية، مثل x = ALL (SELECT ...). وهي تتحقق مما إذا كانت هناك قيمة واحدة فقط فريدة وغير NULL في البيانات.
skewPop يحسب الالتواء لتسلسل.
skewSamp يحسب التواء العينة لتسلسل.
sparkbar ترسم الدالة مُدرَّجًا تكراريًا لتكرار القيم x ولمعدل تكرارها y عبر interval [min_x, max_x].
stddevPop النتيجة تساوي الجذر التربيعي لـ varPop.
stddevPopStable النتيجة تساوي الجذر التربيعي لـ varPop. وعلى عكس stddevPop، تستخدم هذه الدالة خوارزمية مستقرة عدديًا.
stddevSamp النتيجة تساوي الجذر التربيعي لـ varSamp
stddevSampStable النتيجة تساوي الجذر التربيعي لـ varSamp. وتستخدم هذه الدالة خوارزمية مستقرة عدديًا.
stochasticLinearRegression تنفّذ هذه الدالة انحدارًا خطيًا عشوائيًا. وهي تدعم معلمات مخصّصة لمعدل التعلّم، ومعامل التنظيم L2، وحجم الدفعة المصغّرة، كما توفّر عدة طرق لتحديث الأوزان ‏(Adam وsimple SGD وMomentum وNesterov.)
stochasticLogisticRegression تنفّذ هذه الدالة انحدارًا لوجستيًا عشوائيًا. ويمكن استخدامها لمشكلة تصنيف ثنائي، وتدعم المعلمات المخصّصة نفسها التي يدعمها stochasticLinearRegression وتعمل بالطريقة نفسها.
studentTTest يطبّق اختبار t لستيودنت على عينات من مجتمعين.
studentTTestOneSample يطبّق اختبار t لستيودنت لعينة واحدة على عينة ومتوسط مجتمع معلوم.
sum يحسب المجموع. يعمل فقط مع الأرقام.
sumCount يحسب مجموع الأرقام ويعدّ عدد الصفوف في الوقت نفسه. يستخدمه مُحسِّن الاستعلامات في ClickHouse: إذا كانت هناك عدة دوال sum أو count أو avg في استعلام، فيمكن استبدالها بدالة sumCount واحدة لإعادة استخدام العمليات الحسابية. ونادرًا ما تكون هناك حاجة إلى استخدام هذه الدالة صراحةً.
sumKahan يحسب مجموع الأرقام باستخدام خوارزمية الجمع التعويضي لكاهان
sumMap يجمع مصفوفة value واحدة أو أكثر وفقًا للمفاتيح المحددة في مصفوفة key. ويُرجع tuple of arrays: المفاتيح بترتيب مفروز، تليها القيم المجمّعة للمفاتيح المقابلة من دون overflow.
sumMapWithOverflow يجمع مصفوفة value وفقًا للمفاتيح المحددة في مصفوفة key. ويُرجع tuple من مصفوفتين: المفاتيح بترتيب مفروز، والقيم المجمّعة للمفاتيح المقابلة. ويختلف عن الدالة sumMap في أنه يُجري الجمع مع overflow.
sumWithOverflow يحسب مجموع الأرقام، باستخدام نوع البيانات نفسه للنتيجة كما في معلمات الإدخال. وإذا تجاوز المجموع القيمة القصوى لهذا النوع من البيانات، فسيُحسب مع overflow.
theilsU تحسب الدالة theilsU معامل عدم اليقين Theils' U، وهو قيمة تقيس الارتباط بين عمودين في جدول.
timeSeriesChangesToGrid دالة تجميعية تحسب تغيّرات على نمط PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesDeltaToGrid دالة تجميع تحسب delta على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesDerivToGrid دالة تجميع تحسب المشتقة على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesGroupArray ترتّب السلاسل الزمنية حسب الطابع الزمني بترتيب تصاعدي.
timeSeriesInstantDeltaToGrid دالة تجميع تحسب idelta على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesInstantRateToGrid دالة تجميع تحسب irate على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesLastTwoSamples دالة تجميع لإعادة أخذ عينات من بيانات السلاسل الزمنية من أجل حساب irate وidelta على غرار PromQL
timeSeriesPredictLinearToGrid دالة تجميع تحسب التنبؤ الخطي على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesRateToGrid دالة تجميع تحسب rate على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
timeSeriesResampleToGridWithStaleness دالة تجميع تعيد أخذ عينات من بيانات السلاسل الزمنية إلى الشبكة المحددة.
timeSeriesResetsToGrid دالة تجميع تحسب resets على غرار PromQL لبيانات السلاسل الزمنية على الشبكة المحددة.
topK تعيد مصفوفة من القيم الأكثر تكرارًا بصورة تقريبية في العمود المحدد. وتُرتَّب المصفوفة الناتجة ترتيبًا تنازليًا بحسب التكرار التقريبي للقيم، لا بحسب القيم نفسها.
topKWeighted تعيد مصفوفة من القيم الأكثر تكرارًا بصورة تقريبية في العمود المحدد. وتُرتَّب المصفوفة الناتجة ترتيبًا تنازليًا بحسب التكرار التقريبي للقيم، لا بحسب القيم نفسها. بالإضافة إلى ذلك، يُؤخذ وزن القيمة في الاعتبار.
uniq تحسب العدد التقريبي للقيم المختلفة للوسيطة.
uniqCombined تحسب العدد التقريبي لقيم الوسائط المختلفة.
uniqCombined64 تحسب العدد التقريبي لقيم الوسائط المختلفة. وهي مماثلة لـ uniqCombined، لكنها تستخدم hash بطول 64 بت لجميع أنواع البيانات بدلًا من استخدامه لنوع البيانات String فقط.
uniqExact تحسب العدد الدقيق لقيم الوسائط المختلفة.
uniqHLL12 تحسب العدد التقريبي لقيم الوسائط المختلفة باستخدام خوارزمية HyperLogLog.
uniqTheta تحسب العدد التقريبي لقيم الوسائط المختلفة باستخدام Theta Sketch Framework.
varPop تحسب تباين المجتمع الإحصائي.
varPopStable تعيد تباين المجتمع الإحصائي. وعلى خلاف varPop، تستخدم هذه الدالة خوارزمية مستقرة عدديًا. وهي أبطأ، لكنها توفر خطأً حسابيًا أقل.
varSamp تحسب تباين العينة لمجموعة بيانات.
varSampStable تحسب تباين العينة لمجموعة بيانات. وعلى خلاف varSamp، تستخدم هذه الدالة خوارزمية مستقرة عدديًا. وهي أبطأ، لكنها توفر خطأً حسابيًا أقل.
welchTTest تطبّق اختبار t لـ Welch على عينات من مجتمعين إحصائيين.
Navigation