Vraća vrijednost Variant (niz) koja označava gdje se broj pojavljuje unutar izračunatog niza raspona.
Sintaksa
Partition( broj, početak, zaustavljanje, interval)
Sintaksa funkcije Partition sadrži ove argumente:
Argument |
Opis |
broj |
Obavezno. Cijeli broj koji želite procijeniti u odnosu na raspone. |
pocetak |
Obavezno. Cijeli broj koji je početak ukupnog raspona brojeva. Broj ne smije 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četkai vrha). |
Napomene
Funkcija Partition određuje određeni raspon u kojem broj pada i vraća vrijednost Variant (Niz) koja opisuje taj raspon. Funkcija Particija najkorisniji je u upitima. Možete stvoriti upit odabiranja koji pokazuje koliko je narudžbi unutar različitih raspona, na primjer, vrijednosti redoslijeda od 1 do 1000, 1001 do 2000 itd.
U sljedećoj je tablici prikazano kako se rasponi određuju pomoću tri skupa argumenata start, stop i interval . Stupci Prvi raspon i Posljednji raspon pokazuju što particija vraća. Rasponi su predstavljeni nižuvrijednost :gornjavrijednost, pri čemu je niski kraj (donjavrijednost) raspona odvojen od visokog kraja (gornjavrijednost) raspona dvotočkom (:).
pocetak |
zaustavljanje |
interval |
Prije prvog |
Prvi raspon |
Zadnji raspon |
Nakon zadnjeg |
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 gornjoj tablici u trećem retku prikazuje se rezultat prilikom definiranja početka i zaustavljanja skupa brojeva koji se ne mogu ravnomjerno podijeliti intervalom. Zadnji se raspon proteže do zaustavljanja (11 brojeva) iako je interval 20.
Po potrebi, Particija vraća raspon s dovoljno početnih razmaka tako da ima isti broj znakova s lijeve i desne strane dvotočka kao i znakovi u stopu, plus jedan. Time se jamči da će se, ako koristite particiju s drugim brojevima, dobiveni tekst pravilno rukovati tijekom bilo koje daljnje operacije sortiranja.
Ako je interval 1, raspon je broj:broj, bez obzira na argumente starti stop . Na primjer, ako je interval 1, broj je 100, a stop je 1000, Particija vraća " 100: 100".
Ako je bilo koji od dijelova null, particija vraća vrijednost Null.
Primjeri upita
Izraz |
Rezultati |
SELECT Particija(jediničnacijena;40;240;20) AS PriceRange, count(productsales.unitprice) AS Count FROM proizvodProdaja GROUP BY Particija(jediničnaCijena,40.240,20); |
Stvara skup raspona za vrijednosti u polju "jediničnacijena" od "start"(40) do "stop" (240) s jednakom veličinom "interval"(20) i izračunava broj "jediničnecijene" u odgovarajućim rasponima. Prikazuje raspone u stupcu PriceRange i broji u stupcu "Brojanje". |
Primjer VBA-a
U ovom se primjeru pretpostavlja da imate tablicu Narudžbe koja sadrži polje Vozarina. Stvara se postupak odabira koji broji narudžbe za koje trošak vozarina 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 su primjeru argumenti funkcije Particijapokrenuti = 0 , zaustaviti = 500, interval = 50. Prvi raspon stoga bi bio 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);