Podsumowanie: w tym samouczku dowiesz się, jak używać funkcji SQL Server RANK() do obliczania rangi dla każdego wiersza w partycji zestawu wyników.

Wprowadzenie do funkcji SQL Server RANK ()

funkcjaRANK() jest funkcją okna, która przypisuje rangę do każdego wiersza w partycji zestawu wyników.

wiersze w partycji, które mają te same wartości, otrzymają tę samą rangę. Ranga pierwszego rzędu w obrębie partycji wynosi 1., FunkcjaRANK() dodaje liczbę powiązanych wierszy do rangi wiązanej, aby obliczyć rangę następnego wiersza, dlatego rangi mogą nie być kolejne.

poniżej przedstawiono składnię RANK() function:

w tej składni:

  • klauzula PARTITION BY dzieli wiersze partycji zestawu wyników, do których dana funkcja jest stosowana.
  • Po Drugie, klauzulaORDER BY określa logiczny porządek sortowania wierszy w każdej partycji, do której zastosowana jest funkcja.,

funkcjaRANK() jest przydatna dla raportów top-N I bottom-N.,”>

Po Drugie, Wstaw kilka wierszy do sales.rank_demo tabela:

Code language: SQL (Structured Query Language) (sql)

Po Trzecie, zapytanie danych z sales.rank_demo tabela:

Po czwarte, użyj ROW_NUMBER() aby przypisać szeregi do wierszy w zestawie wynikowym sales.rank_demo tabela:

Code language: SQL (Structured Query Language) (sql)

oto wyjście:

jak pokazano wyraźnie na wyjściu, drugi i trzeci wiersz otrzymują tę samą rangę, ponieważ mają tę samą wartość B., Czwarty i piąty wiersz otrzymują rangę 4, Ponieważ funkcja RANK() pomija rangę 3 i oba mają te same wartości.,iv id=”6657ab2abb”>

funkcja:

Używanie funkcji SQL Server RANK() nad zestawem wyników przykład

poniższy przykład używa RANK() funkcja przypisywania rang do produktów według ich cen katalogowych:

oto zestaw wyników:

w tym przykładzie, ponieważ pominęliśmy iv id funkcjaRANK() traktowała cały zestaw wyników jako pojedynczą partycję.,

RANK() funkcja przypisuje rangę do każdego wiersza w zestawie wyników posortowanych według ceny katalogowej od wysokiej do niskiej.,

Korzystanie z funkcji SQL Server RANK() nad partycjami przykład

Ten przykład używa funkcji RANK() aby przypisać rangę każdemu produktowi według ceny katalogowej w każdej marce i zwraca produkty o randze mniejszej lub równej trzem:

poniższy obrazek pokazuje wyjście:

w tym przykładzie:

  • klauzula PARTITION BY dzieli produkty na partycje według identyfikatora marki.,
  • Po Drugie, klauzulaORDER BY sortuje produkty w każdej partycji według cen katalogowych.
  • Po Trzecie, zewnętrzne zapytanie zwraca produkty, których wartości rank są mniejsze lub równe trzem.

funkcjaRANK() jest stosowana do każdego wiersza w każdej partycji i ponownie uruchamiana podczas przekraczania granicy partycji.

w tym samouczku nauczyłeś się, jak używać funkcji SQL Server RANK(), aby przypisać rangę do każdego wiersza w partycji zestawu wyników.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *