GroupBy- ja Ungroup-funktio
Koskee seuraavia: pohjaan perustuvat sovellukset Mallipohjaiset sovellukset Power Pages
Taulukontietueiden ryhmittely ja ryhmittelyn purku.
Description
GroupBy-funktio palauttaa taulukon, jossa tietueet on ryhmitelty yhteen yhden tai useamman sarakkeen arvojen perusteella. Saman ryhmän tietueet sijoitetaan yhteen tietueeseen. Lisäksi luodaan uusi sarake, joka sisältää sisäkkäisen taulukon jäljelle jääneistä sarakkeista.
Ungroup-funktio kääntää GroupBy-prosessin. Tämä funktio palauttaa taulukon, jossa kaikki yhteen ryhmitellyt tietueet on katkaistu erillisiksi tietueiksi.
Voit ryhmitellä tietueet GroupBy-funktiolla, muokata sen palauttamaa taulukkoa ja purkaa muokatun taulukon ryhmittelyn Ungroup-funktiolla. Voit esimerkiksi poistaa tietueryhmän seuraavalla tavalla:
- Käytä GroupBy-funktiota.
- Poista koko tietueryhmä Filter-funktion avulla.
- Käytä Ungroup-funktiota.
Voit myös koostaa tulokset ryhmittelyn perusteella:
- Käytä GroupBy-funktiota.
- Lisää uusi ryhmitellyistä taulukoista koostettu sarake yhdistämällä AddColumns-funktio Sum- ja Average-funktioihin sekä muihin koontifunktioihin.
- Poista ryhmitelty taulukko DropColumns-funktiolla.
Poista ryhmittely yrittää säilyttää GroupByyn syötettyjen tietueiden alkuperäisen järjestyksen. Tämä ei ole aina mahdollista (esimerkiksi jos alkuperäisessä taulukossa on tyhjiä tietueita).
Power Appsissa taulukko on arvo, samaan tapaan kuin merkkijono tai luku. Voit määrittää taulukon funktion argumenttina ja funktio voi palauttaa taulukon. GroupBy ja Ungroup eivät muokkaa taulukkoa, vaan käyttävät taulukkoa argumenttina ja palauttavat eri taulukon. Lisätietoja on kohdassa taulukoiden käsitteleminen.
Muistiinpano
Ennen Power Appsin versiota 3.24042 sarakenimet määritettiin tekstimerkkijonolla käyttäen lainausmerkkejä, ja jos ne oli yhdistetty tietolähteeseen, niiden oli oltava myös loogisia nimiä. Esimerkiksi looginen nimeä "cr43e_name" lainausmerkissä käytettiin näyttönimen lainausmerkittömän näyttönimen Nimi sijaan. SharePoint- ja Excel-tietolähetissä, jotka sisältävät välimerkillisiä sarakenimiä, jokaista välimerkkiä merkitsi "_x0020_". Tällöin esimerkiksi "Sarakkeen nimi" oli "Sarakkeen_x0020_nimi". Kyseisen version jälkeen kaikki sovellukset päivitettiin automaattisesti käyttämään tässä artikkelissa kuvattua uutta syntaksia.
Syntaksi
GroupBy(Taulukko,SarakkeenNimi1 [, SarakkeenNimi2 , ... ],GroupColumnName)
- Taulukko - Pakollinen. Ryhmiteltävä taulukko.
- ColumnNames- Pakollinen. Sarakkeiden nimet Taulukossa, jonka perusteella tietueet ryhmitellään. Näistä sarakkeista tulee sarakkeita lopputuloksena saatavaan taulukkoon.
- GroupColumnName - Pakollinen. Sarakenimi, johon tallennetaan tietuetiedot, jotka eivät sisälly kohtaan ColumnName(s).
Poista ryhmittely(taulukko,ryhmäsarakkeenNimi )
- Taulukko - Pakollinen. Taulukko, jonka ryhmitys puretaan.
- GroupColumnName - Pakollinen. Sarake, joka sisältää tietueen asetustiedot GroupBy-funktiolla.
Esimerkkejä
Kokoelman luominen
- Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee Alkuperäinen.
- Määritä Alkuperäinen-painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CityPopulations,
{ City: "London", Country: "United Kingdom", Population: 8615000},
{ City: "Berlin", Country: "Germany", Population: 3562000},
{ City: "Madrid", Country: "Spain", Population: 3165000},
{ City: "Rome", Country: "Italy", Population: 2874000},
{ City: "Paris", Country: "France", Population: 2273000},
{ City: "Hamburg", Country: "Germany", Population: 1760000},
{ City: "Barcelona", Country: "Spain", Population: 1602000},
{ City: "Munich", Country: "Germany", Population: 1494000},
{ City: "Milan", Country: "Italy", Population: 1344000}
)
Pidä Alt-näppäintä painettuna ja valitse Alkuperäinen-painike.
Juuri luomasi kokoelman nimi on KaupunkienVäkiluvut, ja se sisältää nämä tiedot:
Näytä tämä kokoelma valitsemalla Tiedosto-valikosta Kokoelmat ja valitse sitten KaupunkienVäkiluvut-kokoelma. Kokoelman viisi ensimmäistä tietuetta näytetään:
Tietueiden ryhmittely
Lisää toinen painike ja määritä sen Text-ominaisuuden arvoksi "Group".
Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CitiesByCountry, GroupBy( CityPopulations, Maa, Kaupungit) )
Pidä Alt-näppäintä painettuna ja valitse Ryhmä-painike.
Juuri luomasi kokoelman nimi on KaupungitMaittain. Kokoelmassa edellisen kokoelman tietueet on ryhmitelty Maa-sarakkeen mukaan.
Voit näyttää kokoelman viisi ensimmäistä tietuetta valitsemalla Tiedosto-valikosta Kokoelmat.
Näytä eri maiden/alueiden kaupunkien väkiluvut valitsemalla Kaupungit-sarakkeessa oleva taulukkokuvake kyseisen maan/alueen kohdalta (esimerkiksi Saksa):
Suodata ja pura tietueiden ryhmittely
Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Suodata".
Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CitiesByCountryFiltered, Filter ( CitiesByCountry, "e" maassa) )
Pidä Alt-näppäintä painettuna ja valitse lisäämäsi painike.
Loit juuri kolmannen kokoelman nimeltä KaupungitMaittainSuodatettu, joka sisältää vain ne maat/alueet, joiden nimessä on ”e” (eli ei Saksaa tai Italiaa).
Lisää vielä yksi painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Pura ryhmittely".
Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, Cities ) )
Jonka tuloksena saadaan:
Koontitulokset
Toinen toiminto, joka voidaan suorittaa ryhmitellyssä taulukossa, on tulosten kääntäminen. Tässä esimerkissä lasketaan yhteen maiden/alueiden suurimpien kaupunkien väkiluvut.
Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Summa".
Määritä "Summa"-painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CityPopulationsSum, AddColumns ( CitiesByCountry, 'Sum of City Populations', Sum ( Kaupungit, Population ) ) ) )
Jonka tuloksena saadaan:
AddColumns alkaa CitiesByCountry-peruskokoelmalla ja lisää uuden sarakkeen Kaupungin väestöjen summa. Sarakkeen arvot lasketaan riveittäin perustuen kaavaan Sum( Kaupungit, Väkiluku). AddColumns antaa Kaupungit-sarakkeen (taulukon) arvon kullekin riville, ja Summa laskee yhteen tämän alitaulukon kunkin rivin populaation .
Kun meillä on nyt haluamamme summa, voimme käyttää DropColumns-funktiota alataulukoiden poistamiseen.
Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "SumOnly".
Määritä "SumOnly"-painikkeen OnSelect-ominaisuudeksi tämä kaava:
ClearCollect( CityPopulationsSumOnly, DropColumns ( CityPopulationsSum, kaupungit ) )
Jonka tuloksena saadaan:
Huomaa, ettei tätä taulukkoa tarvinnut purkaa.