SQLite NTILE

Shrnutí: v tomto tutoriálu, se dozvíte, jak používat SQLite NTILE() funkce rozdělit výsledek nastavit do několika kbelíky a přiřadit kbelík číslo na každém řádku.

Úvod do SQLite NTILE() funkce

SQLite NTILE() funkce je okno funkce, která rozděluje uspořádaný výsledek nastavit do několika kbelíky na zadaný výraz a přiřadí vhodné kbelík číslo na každém řádku.

následující text ukazuje syntaxi funkce NTILE() :

v této syntaxi:

výraz

expression může být doslovný kladné celé číslo nebo jakýkoli platný výraz, který se překládá na kladné celé číslo.

funkce NTILE() přiřadí každému řádku čísla od 1 do hodnoty expression. Počet řádků v kbelících se může lišit maximálně o 1. Zbytek počtu řádků dělených kbelíky je přidělen každému kbelíku, počínaje kbelíkem 1.

například pokud máte 10 řádků a 4 kbelíky. Každý kbelík bude mít 2 řádky. Zbytek 10/4 je 2. Takže první kbelík bude mít 2 + 1 = 3 řádky, druhý kbelík bude mít také 3 řádky.

následující obrázek ilustruje nápad:

Pokud hodnota výrazu je větší než počet řádků, pak NTILE() funkce naplní počet segmentů se rovná počtu řádků. Zbývající kbelíky budou tedy prázdné.

pokud máte například 10 řádků a 11 kbelíků, každému řádku bude přiřazeno číslo kbelíku od 1 do 10. 11 kbelík nebude mít žádný řádek.

Všimněte si, že v expressionnelze použít poddotaz nebo funkci okna.

PARTITION BY

klauzule PARTITION BY rozděluje množiny výsledků na oddíly, na které se vztahuje funkce NTILE.

pořadí podle

klauzule ORDER BY určuje pořadí řádků v každém oddílu, na který se vztahuje NTILE().

SQLite NTILE () příklad funkce

použijeme tabulku stop z ukázkové databáze k prokázání funkce NTILE() :

Pomocí SQLite NTILE() funkce s CÍLEM příkladem

následující prohlášení používá NTILE() funkce rozdělit do 4 kbelíky hodnoty v Milliseconds sloupec tracks tabulka z alba 1.

sloupec Milliseconds má v tomto albu 10 hodnot, takže dvě další hodnoty, což je zbytek 10/4, jsou rozděleny do kbelíků 1 a 2, které tedy mají větší hodnotu než kbelíky 3 nebo 4.

zde je výstup:

Pomocí SQLite NTILE() funkce s PARTITION BY klauzule příklad

následující prohlášení používá NTILE() funkce rozdělit skladby každého alba do 3 kbelíky podle hodnot v Bytes sloupec:

následující obrázek ukazuje výstup:

V tomto příkladu, PARTITION BY klauzule distribuovány řádky, do příčky nebo alba. Klauzule ORDER BY třídila skladby v každém albu podle jejich velikostí v bajtech. A funkce NTILE() přiřadila každé skladbě číslo kbelíku a resetovala číslo kbelíku pro každé album.

v tomto tutoriálu jste se naučili, jak pomocí funkce SQLite NTILE() rozdělit sadu výsledků na několik kbelíků a každému řádku přiřadit číslo kbelíku.

  • byl tento návod užitečný ?
  • YesNo

You might also like

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.