percent_rank
دالة نافذة الترتيب
ينطبق على: التحقق من Databricks SQL Databricks Runtime
يحسب ترتيب النسبة المئوية لقيمة داخل القسم.
بناء الجمله
percent_rank()
الحجج
لا تأخذ الدالة أي وسيطات
ارجاع
مزدوج.
يتم تعريف الدالة على أنها الرتبة داخل النافذة مطروحا منها واحد مقسوما على عدد الصفوف داخل النافذة ناقص 1. إذا كان هناك صف واحد فقط في النافذة، فإن الرتبة هي 0.
كتعبير يمكن التعبير عن الدلالية على النحو التالي:
nvl((rank() OVER(PARTITION BY p ORDER BY o) - 1) / nullif(count(1) OVER(PARTITION BY p) -1), 0), 0)
هذه الدالة متشابهة، ولكنها ليست نفس وظيفة النافذة التحليلية cume_dist.
يجب تضمين عبارة ORDER BY في مواصفات النافذة.
امثله
> SELECT a, b, percent_rank(b) OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A1', 3), ('A1', 6), ('A1', 7), ('A1', 7), ('A2', 3), ('A1', 1) tab(a, b)
A1 1 0.0
A1 1 0.0
A1 2 0.3333333333333333
A1 3 0.5
A1 6 0.6666666666666666
A1 7 0.8333333333333334
A1 7 0.8333333333333334
A2 3 0.0