Työskentely toistuvien funktioiden kanssa DAX:ssa

Olen nähnyt DAX:n iterointitoimintojen hämmennystä aina, kun työskentelen LuckyTemplates-jäsenten kanssa foorumilla. Joten teemme katsauksen siitä, mitä näiden toimintojen avulla voidaan saavuttaa ja miksi sinun pitäisi käyttää niitä. Voit katsoa tämän opetusohjelman koko videon tämän blogin alaosasta.

Kun opit lisää DAX- kaavoja, käytät näitä iterointifunktioita paljon enemmän kuin uskotkaan. Ne ovat paljon monipuolisempia kuin yksinkertaiset aggregointifunktiot, kuten SUM tai AVERAGE .

Minulla on tässä muutamia esimerkkejä, ja haluan käydä läpi kunkin esimerkin logiikan, jotta saat erittäin hyvän käsityksen siitä, mitä todella tapahtuu, kun logiikkaa ajetaan näiden kaavojen kautta.

Avainasia iterointifunktioissa on , että ne iteroivat jotain.

Sisällysluettelo

Yksinkertainen iterointi SUMX:n avulla

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tässä tapauksessa haluan tehdä yhteenvedon, mutta haluan toistaa tämän myyntitaulukon jokaisen rivin.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Ja sitten jokaisella rivillä haluan käyttää tätä erityistä logiikkaa täällä.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Siirrytään nopeasti hyvin yksinkertaiseen myyntitaulukkoomme, jossa haluan käyttää logiikkaa jokaisella rivillä. Ja sitten haluan kertoa määrän hinnalla.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Hintaa ei ole tässä taulukossa. Ja tässä mallissa se on itse asiassa tuotetaulukossa.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Seuraavaksi minun on palattava tuotetaulukkooni ja voin tehdä sen RELATED- sovelluksella . Kun laskemme määrän kertaa asianmukainen hinta, teemme tämän jokaiselle riville. Juuri tätä tapahtuu tämän kaavan sisällä.

Nämä ovat avainkäsitteitä, jotka tulee muistaa, kun alamme tehdä edistyneempiä asioita.

Vaihtoehtoinen tapa saada myyntiä SUMX:n avulla

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tässä esimerkissä minulla ontoista myyntitaulukkoa uudelleen. Joten käytämme tätä logiikkaa jokaisella rivillä ja laskemme määrän kertaa hinta jokaisella rivillä ja aggregoimme sen sitten, kun kaikki iteraatiot on tehty.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tässä näet, että tämä tulos on täsmälleen sama kuin ensimmäisen esimerkin tulokset (SUMX Tutorial 2) tai kokonaismyynti.

Voit sijoittaa tähän monia erilaisia ​​asioita – se voi olla mitta ja voit haarautua iterointitoiminnolla. Sinun ei tarvitse viitata tiettyihin sarakkeisiin saadaksesi laskelmat oikein.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Kuten näet tästä, olen tehnyt vain mittarin (Total Sales) tähän ja saan täsmälleen saman tuloksen.

SUMX ja loogiset funktiot

Työskentely toistuvien funktioiden kanssa DAX:ssa

Käytän täällä SUMX:ää , mutta se on myös relevanttia, MINX ja MAXX . Ne ovat kaikki hyvin samanlaisia ​​asioita.

Toinen tärkeä asia muistaa näillä iterointifunktioilla on, että ne suorittavat logiikkaa jokaisella rivillä, ja se tallentaa tuloksen muistiin.

Kun kaikki nämä arvot on tallennettu muistiin, tehdään kattava laskutoimitus – kuten SUMMA tai KESKIMÄÄRÄ .

Työskentely toistuvien funktioiden kanssa DAX:ssa

Takaisin esimerkkiimme, näet tästä, että tämän sarakkeen summa on hieman pienempi kuin edellisissä sarakkeissa.

Työskentely toistuvien funktioiden kanssa DAX:ssa

SUMX- iterointitoiminnolla haluan iteroida jokaisen myyntitaulukon rivin läpi. Ja jokaisella rivillä haluan laskea, onko kyseinen myynti suurempi kuin 2 000 dollaria. Jos on, haluan laskea kyseisen rivin kokonaismyynnin. Mutta jos myynnin kokonaissumma oli alle 2000 dollaria, haluan palauttaa nollan. Joten haluan vain laskea arvokkaamman myynnin.

Jotkut ihmiset ehdottavat, että voisin vain laittaa logiikan lasketun sarakkeen sisään. Mutta emme halua tehdä niin, koska on paljon parempi tapa käyttää tätä logiikkaa DAX:n sisällä sen sijaan, että laittaisimme sen fyysisesti sarakkeen sisään.

Iterointi taulukoiden kautta

Tässä iterointitoiminnot ovat todella hämmästyttäviä. Et voi vain iteroida fyysisen taulukon läpi, kuten teimme aiemmin, vaan voit myös iteroida jonkin muun parametrina syöttämäsi virtuaalisen taulukon kautta.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Ajattelemme, että jokaisella tuloksella on oma kontekstinsa. Tässä nimenomaisessa tapauksessa meillä on asiakaskonteksti.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tässä yhteydessä haluan käydä läpi jokaisen yksittäisen sijainnin ja nähdä, onko tietty asiakas saavuttanut yli 5 000 dollarin myynnin.

Jos näin käy, haluan laskea kokonaismyynnin. Mutta jos ei, haluan sen palauttavan nollan.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Joten tässä nimenomaisessa tapauksessa lasken arvokkaat toimipaikat, joista tämä asiakas ostaa, ja heidän kyseisissä sijainneissa tekemänsä kokonaismyynnin.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Mitätekee tässä, se luo virtuaalitaulukon. Joten SUMX ei edes työskentele minkään fyysisen asian parissa. Se toimii itse asiassa täysin virtuaalisen asian parissa.

Yksinkertainen iterointi MINX:n avulla

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tämä on samanlainen kuin aiemmissa esimerkeissä, mutta SUMX:n sijasta aiomme suorittaa jonkin muun tyyppisen aggregoinnin, kun toistamme jokaisen rivin.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Tässä nimenomaisessa tapauksessa kirjoitamme jokaisen asiakkaan jokaisen yksittäisen sijainnin läpi ja laskemme kunkin sijainnin kokonaismyynnin.

Työskentely toistuvien funktioiden kanssa DAX:ssa

Sitten haluamme palauttaa pienimmän summan paikasta, josta he ostivat.

Yksinkertainen iterointi käyttämällä MAXXia

Työskentely toistuvien funktioiden kanssa DAX:ssa

Teen myös täällä samanlaisen asian vain näyttääkseni iterointitoimintojen monipuolisuuden. Käyn läpi jokaisen yksittäisen sijainnin ja katson niiden myyntiä, mutta palautan sitten suurimman osan myynneistä, minkä vuoksi näemme täällä suurempia lukuja.

Johtopäätös

Avainasia, jota halusin käsitellä tässä artikkelissa, on iteroivan funktion sisällä olevien vaihtoehtojen valikoima verrattuna yksinkertaiseen summaan tai keskiarvoon.

Kun alat perehtyä monimutkaisempiin laskelmiin, huomaat, kuinka tärkeitä nämä tietyt funktiot ovat arvojen palauttamisessa kontekstitasolla.

On niin paljon monipuolisuutta ja niin monia tapoja, että voit suorittaa nämä laskelmat käyttämällä yksinkertaista kaavaa, jos vain osaat käsitellä parametreja.

Jos pidit näiden iterointitoimintojen oppimisesta , voit selata näitä linkkejä saadaksesi lisätietoja tästä aiheesta:

Keskeisimmät käsitteet funktioiden toistamiseen LuckyTemplatesissa

Logiikan iterointi virtuaalitaulukoiden kautta – edistyneet DAX-konseptit LuckyTemplatesissa

Nauti työstäsi tämän läpi.


Suhde- ja taajuustaulukot Excelissä

Suhde- ja taajuustaulukot Excelissä

Aioin sukeltaa Excelin taajuustaulukoihin sekä suhteellisiin taulukoihin. Selvitä, mitä ne ovat ja milloin niitä käytetään.

Kuinka asentaa DAX Studio & Tabular Editor LuckyTemplatesissa

Kuinka asentaa DAX Studio & Tabular Editor LuckyTemplatesissa

Opi lataamaan ja asentamaan DAX Studio ja Tabular Editor 3 ja miten ne määritetään käytettäväksi LuckyTemplatesissa ja Excelissä.

LuckyTemplates -muotokartan visualisointi tilaanalyysiin

LuckyTemplates -muotokartan visualisointi tilaanalyysiin

Tämä blogi sisältää Shape Map -visualisoinnin tilaanalyysiä varten LuckyTemplatesissa. Näytän sinulle, kuinka voit käyttää tätä visualisointia tehokkaasti sen ominaisuuksien ja elementtien kanssa.

LuckyTemplatesin talousraportointi: tulosten kohdentaminen malleihin jokaisella rivillä

LuckyTemplatesin talousraportointi: tulosten kohdentaminen malleihin jokaisella rivillä

Tässä opetusohjelmassa esittelen ainutlaatuisen idean talousraportoinnista, joka allokoi tulokset LuckyTemplatesin sisällä olevien taulukkopohjien ennalta määrittämiseen.

DAX-mittaukset LuckyTemplatesissa käyttämällä mittahaaroitusta

DAX-mittaukset LuckyTemplatesissa käyttämällä mittahaaroitusta

Luo DAX-suureita LuckyTemplatesissa käyttämällä olemassa olevia suureita tai kaavoja. Tätä kutsun mittahaaroitustekniikaksi.

Tehokkain toimintopuhelu LuckyTemplatesissa

Tehokkain toimintopuhelu LuckyTemplatesissa

Tässä blogissa tutustu LuckyTemplates-tietojoukkoon, tehokkaimpaan funktiokutsuun, joka tuo tuhansia M- ja DAX-funktioita sormiesi ulottuville.

Datamallinnustekniikat DAX-mittausten järjestämiseen

Datamallinnustekniikat DAX-mittausten järjestämiseen

Tämän päivän opetusohjelmassa jaan muutamia datamallinnustekniikoita DAX-mittausten järjestämiseksi paremmin tehokkaamman työnkulun aikaansaamiseksi.

LuckyTemplates Financial Dashboard: Täydelliset taulukon mukautusvinkit

LuckyTemplates Financial Dashboard: Täydelliset taulukon mukautusvinkit

LuckyTemplates on loistava työkalu talousraportointiin. Tässä on opetusohjelma räätälöityjen taulukoiden luomisesta LuckyTemplates-talouden hallintapaneelillesi.

Power Queryn kielivirran parhaat käytännöt

Power Queryn kielivirran parhaat käytännöt

Tässä opetusohjelmassa keskustellaan Power Query Language Flowsta ja siitä, kuinka se voi auttaa luomaan sujuvan ja tehokkaan dataraportin.

LuckyTemplates mukautetut kuvakkeet | PBI-visualisointitekniikka

LuckyTemplates mukautetut kuvakkeet | PBI-visualisointitekniikka

Keskustelen yhdestä suosikkitekniikoistani mukautettujen LuckyTemplates-kuvakkeiden ympärillä, joka käyttää mukautettuja kuvakkeita dynaamisella tavalla LuckyTemplates-visuaaleissa.