Partition, funksjon

Gjelder for
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Returnerer en variant (streng) som angir hvor et tall forekommer i en beregnet serie av områder.

Syntaks

Partisjon(tall; start; stopp; intervall)

Syntaksen for funksjonen Partisjon har disse argumentene:

Argumenter Beskrivelse
tall Obligatorisk. Heltall du vil evaluere mot områdene.
Start Obligatorisk. Heltall som er begynnelsen på det totale tallområdet. Tallet kan ikke være mindre enn 0.
Stopp Obligatorisk. Heltall som er slutten av det totale området med tall. Tallet kan ikke være lik eller mindre enn start.
intervall Obligatorisk. Heltall som angir størrelsen på partisjonene innenfor det totale området av tall (mellom start og stopp).

Merknader

Partisjon-funksjonen identifiserer det bestemte området som tallet faller i, og returnerer en variant (streng) som beskriver dette området. Partisjonsfunksjonen er svært nyttig i spørringer. Du kan opprette en utvalgsspørring som viser hvor mange ordrer som faller innenfor ulike områder, for eksempel ordreverdier fra 1 til 1000, 1001 til 2000 og så videre.

Tabellen nedenfor viser hvordan områdene bestemmes ved hjelp av tre sett med start-, stopp- og intervallargumenter . Kolonnene Første område og Siste område viser hva partisjon returnerer. Områdene representeres av lowervalue:uppervalue, der den nedre enden (lowervalue) av området er skilt fra den øvre enden (uppervalue) av området med et kolon (:).

Start Stopp intervall Før første Første område Siste område Etter sist
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: "

I tabellen ovenfor viser den tredje linjen resultatet når start og stopp definerer et sett med tall som ikke kan deles jevnt etter intervall. Det siste området utvides til stopp (11 tall) selv om intervallet er 20.

Hvis det er nødvendig, returnerer Partisjon et område med nok innledende mellomrom, slik at det er samme antall tegn til venstre og høyre for kolonet som det er tegn i stopp, pluss ett. Dette sikrer at hvis du bruker partisjon med andre tall, vil den resulterende teksten bli behandlet riktig under enhver påfølgende sorteringsoperasjon.

Hvis intervall er 1, er området tall:tall, uavhengig av start - og stoppargumenter . Hvis for eksempel intervall er 1, tall er 100 og stopp er 1000, returnerer partisjon " 100: 100".

Hvis noen av delene er null, returnerer partisjon en null.

Eksempler på spørringer

Uttrykk Resultater
SELECT Partisjon(enhetspris;40,240,20) AS PriceRange, count(productsales.unitprice) AS Count FROM productSales GROUP BY Partition(enhetspris,40,240,20); Oppretter et sett med områder for verdiene i feltet «enhetspris» fra «start»(40) til «stopp»(240) med lik «intervall»(20) størrelse og beregner antallet «enhetspris» i de respektive områdene. Viser områdene i kolonnen PriceRange og count i kolonnen 'Count'.

VBA-eksempel

Dette eksemplet antar at du har en ordretabell som inneholder et Frakt-felt. Det oppretter en utvalgsprosedyre som teller antall ordrer der fraktkostnaden faller inn i hvert av flere områder. Partisjonsfunksjonen brukes først til å etablere disse områdene, deretter teller SQL Count-funksjonen antall ordrer i hvert område. I dette eksemplet er argumentene til partisjonsfunksjonenstart = 0, stop = 500, interval = 50. Det første området vil derfor være 0:49, og så videre opp til 500.

SELECT DISTINCTROW Partition([freight],0, 500, 50) AS Range,
Count(Orders.Freight) AS Count
FROM Orders
GROUP BY Partition([freight],0,500,50);