مشاركة عبر


rank دالة نافذة تحديد المرتبة

ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime

إرجاع مرتبة قيمة مقارنة بجميع القيم في القسم.

بناء الجملة

rank()

الوسيطات

لا تأخذ هذه الدالة أي وسيطات.

المرتجعات

INTEGER.

OVER يجب أن تتضمن عبارة دالة النافذة عبارة ORDER BY.

على عكس الدالة dense_rank، ستنتج عن الرتبة فجوات في تسلسل الترتيب. على عكس row_number، لا تكسر الرتبة الروابط.

إذا لم يكن الطلب فريدا، فإن التكرارات تشترك في نفس الموضع النسبي السابق.

الأمثلة

> SELECT a,
         b,
         dense_rank() OVER(PARTITION BY a ORDER BY b),
         rank() OVER(PARTITION BY a ORDER BY b),
         row_number() OVER(PARTITION BY a ORDER BY b)
    FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
 A1 1   1   1   1
 A1 1   1   1   2
 A1 2   2   3   3
 A2 3   1   1   1