Shrnutí: v tomto tutoriálu, se dozvíte, jak používat SQL Server RANK()
funkce pro výpočet pořadí pro každý řádek v oddílu sada výsledků.
Úvod do funkce SQL Server RANK ()
funkceRANK()
je funkce okna, která přiřazuje hodnost ke každému řádku v oddílu sady výsledků.
řádky v oddílu, které mají stejné hodnoty, obdrží stejnou hodnost. Pořadí prvního řádku v oddílu je jedno., Funkce RANK()
přidá počet vázaných řádků k vázané hodnosti pro výpočet hodnosti dalšího řádku, proto nemusí být pozice po sobě jdoucí.
následující příklad ukazuje syntaxi RANK()
funkce:
V této syntaxi:
- První
PARTITION BY
doložky rozděluje řádky sada výsledků oddíly, na který je funkce aplikována. - za druhé, klauzule
ORDER BY
určuje pořadí logického řazení řádků v každém oddílu, na který je funkce použita.,
funkceRANK()
je užitečná pro zprávy top-N A bottom-n.,“>
za Druhé, vložit řádky do sales.rank_demo
tabulky:
Code language: SQL (Structured Query Language) (sql)
za Třetí, data dotazu z sales.rank_demo
tabulky:
Code language: SQL (Structured Query Language) (sql)
za Čtvrté, pomocí ROW_NUMBER()
přiřadit řadí do řádků v sadě výsledků sales.rank_demo
tabulky:
Code language: SQL (Structured Query Language) (sql)
Zde je výstup:
Jak je zřetelně vidět z výstupu, druhý a třetí řádky zobrazí stejné hodnoty, protože mají stejnou hodnotu B., Čtvrtý a pátý řádek získá hodnost 4, protože funkce RANK()
přeskočí hodnost 3 a obě mají také stejné hodnoty.,iv id=“6657ab2abb“>
funkce:
Použití SQL Server RANK() funkce přes sadu výsledků, příklad:
následující příklad používá RANK()
funkce přiřadit řadí k produktům podle jejich seznam cen:
Zde je výsledek:
V tomto příkladu, protože jsme přeskočili PARTITION BY
bodě, RANK()
funkce léčených celý výsledek nastavit jako jeden oddíl.,
funkceRANK()
přiřadí každé řadě pořadí v rámci sady výsledků seřazené podle katalogové ceny od vysoké po nízkou.,
Použití SQL Server RANK() funkce nad oddíly příklad
Tento příklad používá RANK()
funkce přiřadit hodnost každému výrobku ceníková cena v každé značky a výnosy produktů s hodnost menší než nebo se rovná tři.
následující obrázek ukazuje výstup:
V tomto příkladu:
- První
PARTITION BY
doložky rozděluje výrobky do oddílů podle značky Id., - za druhé, klauzule
ORDER BY
třídí produkty v každém oddílu podle ceníků. - za třetí, vnější dotaz vrátí produkty, jejichž hodnoty hodnosti jsou menší nebo rovny třem.
RANK()
funkce je aplikována na každý řádek v každém oddílu a reinitialized při překračování oddíl hranice.
v tomto tutoriálu jste se naučili používat funkci SQL Server RANK()
pro přiřazení hodnosti ke každému řádku v oddílu sady výsledků.