Vraća varijantu (niz) koja upućuje na to gdje se broj pojavljuje unutar izračunatog niza raspona.
Sintaksa
Particija ( broj, početak, zaustavljanje, interval)
Sintaksa funkcije Partition sadrži sljedeće argumente:
Argument |
Opis |
broj |
Obavezno. Cijeli broj koji želite procijeniti na rasponima. |
pocetak |
Obavezno. Cijeli broj koji je početak ukupnog raspona brojeva. Broj ne može biti manji od 0. |
zaustavljanje |
Obavezno. Cijeli broj koji je kraj ukupnog raspona brojeva. Broj ne može biti jednak ili manji od početka. |
interval |
Obavezno. Cijeli broj koji određuje veličinu particija unutar ukupnog raspona brojeva (između početka i svrha). |
Napomene
Funkcija Partition identificira određeni raspon u kojem broj pada i vraća varijantu (niz) koja opisuje taj raspon. Funkcija Partition najkorisnija je u upitima. Možete stvoriti upit s odabiranjem koji označava koliko je narudžbi u različitim rasponima, primjerice, vrijednosti narudžbe od 1 do 1000, 1001 do 2000 i tako dalje.
U sljedećoj su tablici prikazani načini na koje se rasponi određuju pomoću triju skupova argumenata početka, zaustavljanjai intervala . U stupcima prvi raspon i zadnji raspon prikazuje se koja particija vraća. Rasponi predstavljaju lowervalue:uppervalue, gdje je niska završna (lowervalue) raspona odvojena od visokog krajnjih (uppervalue) raspona s dvotočkom (:).
pocetak |
zaustavljanje |
interval |
Prije početka |
Prvi raspon |
Zadnji raspon |
Nakon posljednjeg |
0 |
99 |
5 |
":-1" |
"0:4" |
"95:99" |
"100:" |
20 |
199 |
10 |
": 19" |
"20:29" |
"190:199" |
"200:" |
100 |
1010 |
20 |
": 99" |
"100:119" |
"1000:1010" |
"1011:" |
U tablici prikazanoj gore, treći redak prikazuje rezultat prilikom pokretanja i zaustavljanja Definirajte skup brojeva koji se ne mogu ravnomjerno podijeliti prema intervalima. Posljednji se raspon proteže na zaustavljanje (11 brojeva) iako je interval 20.
Ako je potrebno, Partition vraća raspon s dovoljno vodećih razmaka tako da postoji isti broj znakova s lijevog i desnog dijela debelog crijeva kao što su znakovi u odjeljku stop, plus jedan. Time se osigurava da ćete, ako koristite particiju s drugim brojevima, tekst koji se rezultira pravilno rukovati tijekom naknadnog postupka sortiranja.
Ako je interval 1, raspon je broj: broj, bez obzira na argumente Start i stop . Primjerice, ako je interval 1, broj je 100, a stop je 1000, Partition vraća "100:100".
Ako je neki od dijelova null, Partition vraća Null.
Primjeri upita
Izraz |
Rezultati |
Odaberite Partition (jedinična cijena, 40240) kao PriceRange, Count (productsales. Jedinična cijena) kao brojanje iz grupe productSales po particiji (jedinična cijena, 40240, 20); |
Stvara skup raspona za vrijednosti u polju "Jedinična cijena" od "Start" (40) do "Stop" (240) s jednakim "intervalom" (20) i izračunati broj "JediničnaCijena" u odgovarajućim rasponima. Prikazuje raspone u stupcu PriceRange i brojanje u stupcu "broj". |
Primjer VBA
U ovom se primjeru pretpostavlja da imate tablicu Narudžbe koja sadrži polje tereta. Stvara se postupak odabira koji broji narudžbe za koje trošak tereta spada u svaki od nekoliko raspona. Funkcija Partition najprije se koristi za uspostavljanje tih raspona, a zatim funkcija SQL Count broji broj narudžbi u svakom rasponu. U ovom primjeru argumenti funkcije Partition su početak = 0, stop = 500, interval = 50. Prvi raspon stoga će biti 0:49, i tako dalje do 500.
SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count
FROM Orders
GROUP BY Partition([freight],0,500,50);