I denne artikkelen vil du forstå hvordan du jobber med Ntile () -funksjonen i SQL Server. Ntile () -funksjonen lar deg distribuere radene i en bestilt partisjon i spesifikke nummererte grupper.
SQL Server ntile () -funksjon
Ntile () -funksjonen er en del av SQL Server Analytics -funksjonene som lar deg tildele rader i en bestilt partisjon i et spesifisert antall like grupper. Hver gruppe er nummerert fra 1 og utover. Funksjonen tildeler deretter et tall som indikerer gruppen som raden passer til i.
Følgende representerer funksjonssyntaks:
Ntile (heltall_ekspression) over ([])
Argumentene uttrykkes som vist nedenfor:
- Heltall_ekspression - Dette definerer antall grupper som partisjonene er delt i.
- PARTITION_BY_CLAUSE - Denne klausulen deler resultatet satt inn i forskjellige partisjoner der Ntile () -funksjonen brukes.
- Order_by_claus - Denne klausulen definerer rekkefølgen Ntilile -funksjonsverdiene er tildelt radene i en partisjon.
Funksjonen returnerer Bigint -typen.
Eksempelbruk
Følgende eksempel viser bruk av ntile () -funksjonen over et resultatsett.
Anta at vi har en tabell med prøvedata som vist:
Drop Database hvis eksisterer inventar;
Opprette databasebeholdning;
Bruk varelager;
Slippbord hvis det eksisterer produkter;
Lag bordprodukter
(
id int identitet primær nøkkel ikke null,
produktnavn varchar (100),
Produsenten varchar (50),
mengde int ikke null,
pris int standard 0,
in_stock bit
);
sett inn i produkter (produktnavn, produsent, mengde, pris, in_stock)
Verdier ('Apple iPad Air - 2022', 'Apple', 100, 569.99, 1),
('Samsung Galaxy Z Flip 4 - 2022', 'Samsung', 302, 1569.00, 1),
('Sony PlayStation 5 - 2020', 'Sony', 500, 499.99, 1),
('Samsung Galaxy Watch -5 Pro - 2022', 'Samsung', 600, 209 / .99, 1),
('Apple Watch Series 6 - 2022', 'Apple', 459, 379.90, 1),
('Apple AirPods Pro - 2022', 'Apple', 200, 199.99, 1),
('55 "Klasse S95B OLED 4K Smart TV - 2021 ',' Samsung ', 900, 1999.90, 1),
('Odyssey Ark Quantum Mini -ledet buet spillskjerm - 2021', 'Samsung', 50, 2999.90, 1);
Vi kan dele opp dataene i tabellen i fire grupper som vist i spørringen nedenfor:
Velg produktnavn, produsent, pris, ntile (4) over (bestilling av produsent) grupper
fra produkter;
Utgangstabellen er som vist:
Vi kan også dele opp dataene i forskjellige grupper og anvende Ntile () -funksjonen på hver divisjon. For eksempel deler spørringen nedenfor dataene basert på produsenten.
Velg produktnavn, produsent, pris, ntile (1) over (partisjon etter produsent bestilling av produsent) grupper
fra produkter;
Resultat:
Konklusjon
I denne artikkelen lærte du det grunnleggende om å jobbe med Ntile () -funksjonen i SQL Server for å distribuere rader med en bestilt partisjon i forskjellige sett.