Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

topK

topK

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

تعيد مصفوفة تحتوي على القيم الأكثر تكرارًا على نحو تقريبي في العمود المحدد. وتُرتَّب المصفوفة الناتجة ترتيبًا تنازليًا حسب التكرار التقريبي للقيم (وليس حسب القيم نفسها).

تُطبّق خوارزمية Filtered Space-Saving لتحليل TopK، استنادًا إلى خوارزمية reduce-and-combine من Parallel Space Saving.

لا توفّر هذه الدالة نتيجة مضمونة. وفي بعض الحالات، قد تحدث أخطاء وقد تُعيد قيمًا متكررة ليست هي الأكثر تكرارًا.

انظر أيضًا

الصيغة

topK(N)(column)
topK(N, load_factor)(column)
topK(N, load_factor, 'counts')(column)

المعلمات

  • N — عدد العناصر المطلوب إرجاعها. القيمة الافتراضية: 10. الحد الأقصى للقيمة N = 65536. UInt64
  • load_factor — اختياري. يحدد عدد الخلايا المحجوزة للقيم. إذا كانت uniq(column) > N * load_factor، فستكون نتيجة الدالة topK تقريبية. القيمة الافتراضية: 3. UInt64
  • counts — اختياري. يحدد ما إذا كان يجب أن تتضمن النتيجة عددًا تقريبيًا وقيمة الخطأ. Bool

الوسائط

  • column — اسم العمود المطلوب العثور على أكثر القيم تكرارًا فيه. String

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

تعيد مصفوفة تضم أكثر القيم تكرارًا بشكل تقريبي، مرتبة ترتيبًا تنازليًا حسب التكرار التقريبي. Array

أمثلة

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

SELECT topK(3)(AirlineID) AS res
FROM VALUES('AirlineID UInt32', (19393), (19393), (19393), (19393), (19790), (19790), (19790), (19805), (19805), (20304));
┌─res─────────────────┐
│ [19393,19790,19805] │
└─────────────────────┘

انظر أيضًا

Navigation