Funkcija Partition

Attiecas uz
Access pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Atgriež Variant (Virkne), kas norāda, kur skaitlis sastopams aprēķinātajā diapazonu sērijā.

Sintakse

Partition(skaitlis, sākums, apturēšana, intervāls)

Funkcijas Partition sintaksei ir šādi argumenti:

Arguments Apraksts
skaitlis Obligāts arguments. Vesels skaitlis, kas jānovērtē attiecībā pret diapazoniem.
Sākt Obligāts arguments. Vesels skaitlis, kas ir kopējā skaitļu diapazona sākums. Skaitlis nevar būt mazāks par 0.
apturēt Obligāts arguments. Vesels skaitlis, kas ir skaitļu kopdiapazona beigas. Skaitlis nevar būt vienāds vai mazāks par sākumu.
intervāls Obligāts arguments. Vesels skaitlis, kas norāda nodalījumu lielumu kopējā skaitļu diapazonā (starp sākuma un beigu datumu).

Piezīmes

Funkcija Partition identificē konkrēto diapazonu, kurā krīt skaitlis, un atgriež šo diapazonu raksturojošu Variant (Virkni). Funkcija Partition ir visnoderīgākā vaicājumos. Varat izveidot atlases vaicājumu, kas rāda, cik pasūtījumu ietilpst dažādos diapazonos, piemēram, pasūtījumu vērtības no 1 līdz 1000, no 1001 līdz 2000 utt.

Tālāk esošajā tabulā parādīts, kā tiek noteikti diapazoni, izmantojot trīs sākuma, apturēšanas un intervāla argumentu kopas. Kolonnās Pirmais diapazons un Pēdējais diapazons rāda, kādu nodalījumu atgriež. Diapazoni tiek attēloti kā zemākā_vērtība:augstākā vērtība, kur diapazona zemākā vērtība (zemākā vērtība) ir atdalīta no diapazona augstākās vērtības (augšējā) ar kolu (:).

Sākt apturēt intervāls Pirms pirmā Pirmais diapazons Pēdējais diapazons Pēc pēdējās
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: "

Iepriekš redzamajā tabulā trešajā rindiņā tiek rādīts rezultāts: start un stop definē skaitļu kopu, kuru nevar vienmērīgi sadalīt ar intervālu. Pēdējais diapazons tiek paplašināts līdz pieturai (11 skaitļi), lai gan intervāls ir 20.

Ja nepieciešams, nodalījums atgriež diapazonu ar pietiekami daudz sākuma atstarpēm, lai pa kreisi un pa labi no kola būtu tikpat daudz rakstzīmju kā pieturā un pieturā plus viens. Tas nodrošina, ka, izmantojot nodalījumu ar citiem skaitļiem, iegūtais teksts tiks pareizi apstrādāts visu turpmāko kārtošanas darbību laikā.

Ja intervāls ir 1, neatkarīgi no sākuma un apturēšanas argumentiem diapazons ir skaitlis:skaitlis. Piemēram, ja intervāls ir 1, skaitlis ir 100 un stop ir 1000, Partition atgriež " 100: 100".

Ja kāda no daļām ir Null, Partition atgriež Null.

Vaicājumu piemēri

Izteiksme Rezultāti
SELECT Partition(vienībascena,40,240,20) KĀ CenaDiapazons, skaits(produkts_pārdošana.vienības_cena) AS Skaits FROM productSales GROUP BY Partition(vienībascena,40,240,20); Izveido diapazonu kopu lauka "vienībascena" vērtībām no "start"(40) līdz "stop"(240) ar vienādu "intervāla"(20) lielumu, un aprēķina "vienībascena" skaitu attiecīgajos diapazonos. Parāda diapazonus kolonnā PriceRange un count kolonnā Count.

VBA piemērs

Šajā piemērā pieņemts, ka jums ir tabula Pasūtījumi, kurā ir lauks Freight. Tiek izveidota atlases procedūra, kas saskaita pasūtījumus, kuriem ietilpst transporta izmaksas katrā no vairākiem diapazoniem. Vispirms šo diapazonu noteikšanai izmanto funkciju Partition , bet pēc tam SQL Count funkcija saskaita pasūtījumu skaitu katrā diapazonā. Šajā piemērā funkcijas Partition argumenti ir sākums = 0, stop = 500, intervāls = 50. Tādējādi pirmais diapazons būtu 0:49 un tā tālāk līdz 500.

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