Funkciji »GroupBy« in »Ungroup« v rešitvi Power Apps

Združi in razdruži zapise tabele.

Opis

Funkcija GroupBy vrne tabelo z zapisi, združenimi v skupino na podlagi vrednosti v enem ali več stolpcih. Zapisi v isti skupini so umeščeni v en zapis, z dodanim stolpcem, ki drži ugnezdeno tabelo preostalih stolpcev.

Funkcija Ungroup razveljavi proces GroupBy. Ta funkcija vrne tabelo, pri čemer na ločene zapise loči vse zapise, ki so bili združeni v skupino.

Zapise lahko združite s funkcijo GroupBy, spremenite tabelo, ki jo vrne, nato pa razdružite zapise v spremenjeni tabeli s funkcijo Ungroup. Skupino zapisov lahko na primer odstranite po tem pristopu:

  • Uporabite funkcijo GroupBy.
  • Uporabite funkcijo Filter, da odstranite celotno skupino zapisov.
  • Uporabite funkcijo Ungroup.

Lahko tudi združite rezultate na podlagi skupine:

  • Uporabite funkcijo GroupBy.
  • Uporabite funkcijo AddColumns s funkcijo Sum, Average in drugimi združevalnimi funkcijami, da dodate nov stolpec, ki je združek tabel skupine.
  • Uporabite funkcijo DropColumns, da spustite tabelo skupine.

Ungroup poskuša ohraniti prvotni vrstni red zapisov, ki so bili dovedeni v GroupBy. To ni vedno mogoče (na primer, če prvotna tabela vsebuje zapise prazno).

Tabela je vrednost v rešitvi Power Apps, tako kot niz ali številka. Določite lahko tabelo kot argument za funkcijo in funkcija lahko vrne tabelo. Funkciji GroupBy in Ungroup tabele ne spremenita; vzameta jo kot argument in vrneta drugo tabelo. Za več informacij glejte delo s tabelami.

Sintaksa

GroupBy( Table, ColumnName1 [, ColumnName2, ... ], GroupColumnName )

  • Table – obvezno. Tabela, ki jo je treba združiti.

  • ColumnName(s) – obvezno. Imena stolpcev v možnosti Table, po kateri se zapisi združijo. Ti stolpci postanejo stolpci v pridobljeni tabeli.

  • GroupColumnName – obvezno. Ime stolpca za shranjevanje podatkov zapisa ni v ColumnName(s).

    Opomba

    Za vire podatkov SharePoint in Excel, ki vsebujejo imena stolpcev s presledki, določite vsak presledek kot "_x0020_". Npr. določite »Column Name« kot »Column_x0020_Name«.

Ungroup( Table, GroupColumnName )

  • Table – obvezno. Tabela, ki jo je treba razdružiti.

  • GroupColumnName – obvezno. Stolpec, ki vsebuje nastavitev podatkov zapisa s funkcijo GroupBy.

    Opomba

    Za vire podatkov SharePoint in Excel, ki vsebujejo imena stolpcev s presledki, določite vsak presledek kot "_x0020_". Npr. določite »Column Name« kot »Column_x0020_Name«.

Primeri

Ustvarjanje zbirke

  1. Dodajte gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje Prvotno.
  2. Nastavite lastnost OnSelect gumba Prvotno na to formulo:
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. Medtem ko držite tipko Alt, izberite gumb Prvotno.

    Pravkar ste ustvarili zbirko, imenovano CityPopulations, ki vsebuje te podatke:

    Pravkar ste ustvarili zbirko, imenovano CityPopulations, ki vsebuje te podatke: Primer CityPopulations.

  2. Če želite prikazati to zbirko, izberite Zbirke v meniju Datoteka in nato izberite zbirko CityPopulations. Prikaže se prvih pet zapisov v zbirki:

    Zbirka CityPopulations.

Združevanje zapisov

  1. Dodajte še en gumb in nastavite njegovo lastnost Besedilo na "Group".

  2. Nastavite lastnost OnSelect tega gumba na to formulo:

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

  3. Medtem ko držite tipko Alt, izberite gumb Združi.

    Pravkar ste ustvarili zbirko, imenovano CitiesByCountry, v kateri so zapisi prejšnje zbirke združeni po stolpcu Country.

    Združena mesta.

  4. Če želite prikazati prvih pet zapisov v tej zbirki, izberite Zbirke v meniju Datoteka.

    Mesta po državi.

  5. Če želite prikazati populacije mest v državi, izberite ikono tabele v stolpcu Cities za to državo (na primer, Nemčija):

    Prebivalstvo – Nemčija.

Filtriranje in razdruževanje zapisov

  1. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Filter".

  2. Nastavite lastnost OnSelect tega gumba na to formulo:

    ClearCollect( CitiesByCountryFiltered, Filter( CitiesByCountry, "e" in Country ) )

  3. Medtem ko držite tipko Alt, izberite gumb, ki ste ga dodali.

    Pravkar ste ustvarili tretjo zbirko, imenovano CitiesByCountryFiltered, ki vključuje samo tiste države/regije, ki imajo v imenu »e« (torej ne Španija in Italija).

    CitiesByCountryFiltered.

  4. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Ungroup".

  5. Nastavite lastnost OnSelect tega gumba na to formulo:

    ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, "Cities" ) )

    Rezultat je:

    Mesta po državah po razdružitvi.

Združeni rezultati

Z združeno tabelo lahko združimo tudi rezultate. V tem primeru bomo sešteli populacije večjih mest v vsaki državi.

  1. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Sum".

  2. Nastavite lastnost OnSelect gumba "Sum" na to formulo:

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

    Rezultat je:

    Vsota mest.

    AddColumns se začne z osnovno zbirko CitiesByCountry in doda nov stolpec Sum of City Populations. Vrednosti tega stolpca so izračunane vrstica za vrstico na podlagi formule Sum( Cities, Population ). AddColumns zagotavlja vrednost stolpca Cities (tabela) za vsako vrstico in Sum sešteje možnost Population za vsako vrstico te podtabele.

    Zdaj, ko imamo želeno vsoto, lahko uporabimo DropColumns za odstranjevanje podtabel.

  3. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "SumOnly".

  4. Nastavite lastnost OnSelect gumba "SumOnly" na to formulo:

    ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, "Cities" ) )

    Rezultat je:

    Vsota držav.

    Upoštevajte, da ni bilo treba razdružiti te tabele.

Opomba

Ali nam lahko poveste, kateri je vaš prednostni jezik za dokumentacijo? Izpolnite kratko anketo. (upoštevajte, da je v angleščini)

Z anketo boste porabili približno sedem minut. Ne zbiramo nobenih osebnih podatkov (izjava o zasebnosti).