Yhteenveto: Tässä opetusohjelmassa opit käyttämään SQL Server -palvelinta ROW_NUMBER()
-toiminto, jolla määritetään peräkkäinen kokonaisluku kullekin tulosjoukon riville.
Johdanto SQL Server ROW_NUMBER () -funktioon
ROW_NUMBER()
on ikkunafunktio, joka määrittää peräkkäisen kokonaisluvun jokaiselle riville tulosjoukon osiossa. Rivin numero alkaa numerolla 1 jokaisen osion ensimmäisellä rivillä.
Seuraava näyttää ROW_NUMBER()
-funktion syntaksin:
Otetaan tutkia ROW_NUMBER()
-funktion syntaksia yksityiskohtaisesti.
PARTITION BY
PARTITION BY
lauseke jakaa tulosjoukon osioihin (toinen termi riviryhmille). ROW_NUMBER()
-funktiota käytetään kullekin osiolle erikseen ja se alustaa jokaisen osion rivinumeron uudelleen.
Lauseke PARTITION BY
on valinnainen. Jos ohitat sen, ROW_NUMBER()
-toiminto käsittelee koko tulosjoukkoa yhtenä osiona.
ORDER BY
ORDER BY
-lauseke määrittelee rivien loogisen järjestyksen tulosjoukon jokaisessa osiossa. Lauseke ORDER BY
on pakollinen, koska ROW_NUMBER()
-toiminto on järjestysherkkä.
SQL Palvelimen ROW_NUMBER () esimerkkejä
Käytämme esimerkkitietokannan sales.customers
-taulukkoa osoittamaan funktiota ROW_NUMBER()
.
SQL Serverin käyttö ROW_NUMBER () funktio tulosjoukon päällä esimerkki
Seuraava lauseke käyttää ROW_NUMBER()
-toimintoa määrittääksesi jokaiselle asiakasriville järjestysnumeron:
Tässä on osittainen ulostulo:
Tässä esimerkissä ohitti lausekkeen PARTITION BY
, joten ROW_NUMBER()
käsitteli koko tulosjoukkoa yhtenä osiona.
SQL: n käyttö Palvelin ROW_NUMBER () osioiden esimerkissä
Seuraava esimerkki käyttää ROW_NUMBER()
toiminto määrittää peräkkäisen kokonaisluvun jokaiselle asiakkaalle. Se nollaa numeron, kun kaupunki muuttuu:
Seuraava kuva näyttää osittaisen lähdön:
Tässä esimerkissä käytimme PARTITION BY
-lauseketta asiakkaiden jakamiseen osioihin kaupunkikohtaisesti. Rivin numero alustettiin uudelleen, kun kaupunki muuttui.
SQL Server ROW_NUMBER () -sivun käyttäminen sivutuksessa
ROW_NUMBER()
-toiminto on hyödyllinen sivutuksessa sovelluksissa. Voit esimerkiksi näyttää luettelon asiakkaista sivun mukaan, jossa jokaisella sivulla on 10 riviä.
Seuraava esimerkki käyttää ROW_NUMBER()
-palautetta asiakkaille riviltä 11 kohtaan 20, joka on toinen sivu:
Tulos on seuraava:
Tässä esimerkissä:
- Ensinnäkin CTE käytti
ROW_NUMBER()
-funktiota jokainen tuloksen rivi asettaa peräkkäisen kokonaisluvun. - Toiseksi ulompi kysely palautti toisen sivun rivit, joiden rivinumero on 11-20.
Tässä opetusohjelmassa olet oppinut käyttämään SQL Server ROW_NUMBER()
-toimintoa peräkkäisen kokonaisluvun määrittämiseksi jokaiselle kyselyn osion riville.