Összefoglaló: ebben a bemutatóban a MySQL DENSE_RANK() függvényt ismerheti meg, és megtudhatja, hogyan kell alkalmazni a sor rangjának megállapítására egy partícióban vagy eredményhalmazban.
A MySQL DENSE_RANK függvény bemutatása
A DENSE_RANK() egy ablakfüggvény, amely rangot rendel minden sorhoz egy partícióban vagy eredményhalmazban, a rangértékek közötti hézagok nélkül.
Egy sor rangját eggyel növeli a sor előtt álló különböző rangértékek számából.
A DENSE_RANK() függvény szintaxisa a következő:
Code language: SQL (Structured Query Language) (sql)
Ebben a szintaxisban:
- Először a PARTITION BYzáradék aFROMzáradék által előállított eredményhalmazokat partíciókra osztja. ADENSE_RANK()függvényt minden partícióra alkalmazzuk.
- Második, a ORDER BYzáradék megadja a sorok sorrendjét minden partícióban, amelyekre aDENSE_RANK()függvény hat.
Ha egy partícióban két vagy több sor azonos rangértékkel rendelkezik, akkor ezek mindegyike azonos rangértéket kap.
A RANK() függvénytől eltérően a DENSE_RANK() függvény mindig egymást követő rangértékeket ad vissza.
Tegyük fel, hogy van egy t táblázatunk néhány mintaadattal az alábbiak szerint:
Code language: SQL (Structured Query Language) (sql)
A következő utasítás a DENSE_RANK() függvényt használja arra, hogy rangot rendeljen minden sorhoz:
Code language: SQL (Structured Query Language) (sql)
Íme a kimenet:

MySQL DENSE_RANK() függvény példa
A bemutatóhoz az ablakfüggvény bemutatóban létrehozott sales táblázatot fogjuk használni.

A következő utasítás a DENSE_RANK() függvényt használja az értékesítési alkalmazottak rangsorolására az eladások összege alapján.
Code language: SQL (Structured Query Language) (sql)
A kimenet a következő:

A példában:
- Először a PARTITION BYzáradék az üzleti év alapján partíciókra osztotta az eredményhalmazokat.
- Második lépésben a ORDER BYzáradék az értékesítési alkalmazottak sorrendjét az értékesítés alapján, csökkenő sorrendben határozta meg.
- Harmadik lépésben a DENSE_RANK()függvényt alkalmazzuk minden partícióra aORDER BYzáradék által meghatározott sorok sorrendjével.
Ezzel a bemutatóval megtanulta, hogyan használhatja a MySQL DENSE_RANK() függvényét az eredményhalmaz egyes partícióiban lévő sorok rangsorolásához.
- Hasznos volt ez a bemutató?
- IgenNem