Share via


GroupBy- ja Ungroup-funktio

Soveltuu: Pohjaan perustuvat sovellukset Mallipohjaiset sovellukset

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.

Ungroup yrittää säilyttää GroupBy-funktiolla 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. Ne kohtelevat 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( Table, ColumnName1 [, ColumnName2, ... ], GroupColumnName )

  • Table – Pakollinen. Ryhmiteltävä taulukko.
  • ColumnName(s) – 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).

Ungroup( Table, GroupColumnName )

  • Table – Pakollinen. Taulukko, jonka ryhmitys puretaan.
  • GroupColumnName – Pakollinen. Sarake, joka sisältää tietueen asetustiedot GroupBy-funktiolla.

Esimerkkejä

Kokoelman luominen

  1. Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee Alkuperäinen.
  2. 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}
)
  1. 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:

    CityPopulations-esimerkki

  2. Näytä tämä kokoelma valitsemalla Tiedosto-valikosta Kokoelmat ja valitse sitten KaupunkienVäkiluvut-kokoelma. Kokoelman viisi ensimmäistä tietuetta näytetään:

    CityPopulations-kokoelma.

Tietueiden ryhmittely

  1. Lisää toinen painike ja määritä sen Text-ominaisuuden arvoksi "Group".

  2. Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect( CitiesByCountry, GroupBy( CityPopulations, Country, Cities ) )

  3. 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.

    Ryhmitetyt kaupungit.

  4. Voit näyttää kokoelman viisi ensimmäistä tietuetta valitsemalla Tiedosto-valikosta Kokoelmat.

    Kaupungit maan/alueen mukaan.

  5. Näytä eri maiden/alueiden kaupunkien väkiluvut valitsemalla Kaupungit-sarakkeessa oleva taulukkokuvake kyseisen maan/alueen kohdalta (esimerkiksi Saksa):

    Väkiluku - Saksa.

Suodata ja pura tietueiden ryhmittely

  1. Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Suodata".

  2. Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect (KaupungitMaittainSuodatettu, Filter(KaupungitMaittain, "e" in Maa))

  3. 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).

    CitiesByCountryFiltered-tiedosto.

  4. Lisää vielä yksi painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Pura ryhmittely".

  5. Määritä painikkeen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, Cities ) )

    Jonka tuloksena saadaan:

    Kaupungit maittain/alueittain ryhmittelyn purkamisen jälkeen.

Koontitulokset

Toinen toiminto, joka voidaan suorittaa ryhmitellyssä taulukossa, on tulosten kääntäminen. Tässä esimerkissä lasketaan yhteen maiden/alueiden suurimpien kaupunkien väkiluvut.

  1. Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "Summa".

  2. Määritä "Summa"-painikkeen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect( CityPopulationsSum, AddColumns( CitiesByCountry, 'Sum of City Populations', Sum( Cities, Population ) ) )

    Jonka tuloksena saadaan:

    Kaupunkien summa.

    AddColumns aloittaa KaupungitMaittain-kokoelmasta ja lisää uuden sarakkeen Kaupunkien väkilukujen summa. Sarakkeen arvot lasketaan riveittäin perustuen kaavaan Sum( Kaupungit, Väkiluku). AddColumns antaa Kaupungit-sarakkeen arvon (taulukko) jokaiselle riville, ja Sum laskee yhteen jokaisen alataulukon rivin väkiluvun.

    Kun meillä on nyt haluamamme summa, voimme käyttää DropColumns-funktiota alataulukoiden poistamiseen.

  3. Lisää painike ja määritä sen Text-ominaisuus niin, että painikkeessa lukee "SumOnly".

  4. Määritä "SumOnly"-painikkeen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, Cities ) )

    Jonka tuloksena saadaan:

    Maiden summa.

    Huomaa, ettei tätä taulukkoa tarvinnut purkaa.