Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
Jeg har fundet ud af, at de fleste mennesker bliver forvirrede med hensyn til at forstå, hvordan DAX fungerer i rækkesammenhæng . Dette skyldes, at rækkekontekst kan være ret kompliceret og unødvendigt. Så vi kommer til at berøre rækkekonteksten gennem denne artikel. Du kan se den fulde video af denne tutorial nederst på denne blog.
Den måde, jeg tænker på rækkekontekst på, er gennem iterationer eller itererende funktioner . Så snart jeg lavede den skelnen i mit sind, gav det mere mening i forhold til, hvad der faktisk foregik i beregningsmotoren.
Som en opsummering har vi diskuteret, at der er tre typer kontekster: evalueringskonteksten , filterkonteksten og rækkekonteksten .
Enhver DAX-beregning fungerer i en to-trins proces. Evalueringskonteksten går altid først og derefter forgrener den sig i enten filterkontekst eller rækkekontekst afhængig af hvilken funktion du skriver .
Indholdsfortegnelse
Forstå rækkekontekst
Rækkekontekst handler om iteration.
Jeg vil vise dig et par eksempler, og forhåbentlig vil dette hjælpe dig med at forstå, hvad rækkekontekst faktisk gør i bagenden.
Rækkekontekst versus filterkontekst
I vores eksempel bliver formlen beregnet viafordi det er en simpel sammenlægning. Den opsummerer hele kolonnen Antal, efter at alle de indledende filtre er blevet sat på plads.
Det indledende filter på salgstabellen er produkt 1. Ved at opsummere hver mængde, der er blevet solgt, får vi 165.
Nu vil jeg vise dig, hvordan du får nøjagtig det samme resultat, men beregnet på en meget anderledes måde. Først vil jeg oprette et nyt mål for mængde solgt iteration ved hjælp af en itererende formel.
Eksempler på itererende funktioner inkluderer SUMX ,, MANYX og COUNTX . I dette tilfælde skal vi bruge SUMX .
SUMX - funktionen har bedt mig om at indsætte en tabel, så jeg har tænkt mig at indsætte Salgstabellen. Og så bad den mig om et udtryk, så jeg satte bare i kolonnen Mængde.
Denne funktion er ret anderledes end den første funktion, men jeg får nøjagtig det samme resultat, når jeg trækker den ind.
Vi får nøjagtig de samme resultater her, fordi det i sidste ende er den samme beregning. Det blev bare beregnet på en anden måde.
Den solgte mængde blev beregnet ved hjælp af rækkekontekst , mens den samlede solgte mængde blev beregnet ved hjælp af filterkontekst .
Beregning af solgt mængde iteration ved hjælp af rækkekontekst
Lad os nu gennemgå trin for trin, hvordan mængden solgt iteration beregnes. Først skal du huske at forlade den indledende værdiansættelseskontekst, som er produkt 1 i dette tilfælde. Og så via rækkekontekst itererer vi gennem hver enkelt række i tabellen, som vi angiver.
I dette tilfælde angiver vi salgstabellen, og så går vi og ser på hver enkelt række i kolonnen Antal.
Under den indledende evaluering vil produkt 1 blive bestemt af, hvad der er filtreret i produkt-id-kolonnen. Og så tæller den rækkerne op under kolonnen Antal. Hver gang den rammer en række går den ind og gemmer resultatet i hukommelsen.
Efter at den har nået bunden af tabellen, går den så hen og laver en evaluering af alle de resultater, der er gemt i hukommelsen, og så vil den lave den udregning, du beder om den, som i dette tilfælde er SUMX .
Hvorfor bruge en rækkekontekst eller en itererende funktion?
Dette skyldes, at du inde i en itererende funktion kan gøre langt mere komplekse ting. Du kan skrive noget meget avanceret logik indeni.
For hver række i salgstabellen ganges mængden for eksempel med 2. Du vil nu se, at den samme beregningsproces finder sted, men vi får forskellige resultater.
Dette skyldes, at vi for hver enkelt række skriver en anden logik. Efter at have gennemgået hver enkelt række i mængdekolonnen, gange vi værdien med to, og så bliver den gemt i hukommelsen. Til sidst laver vi en SUM .
Vi kan også skrive forskellige ting her, herunder avanceret logik som f.eksellerlogik.
Der er dynger og dynger af eksempler på, hvor det ville være bedre at bruge en itererende funktion eller rækkekontekst til at lave en beregning frem for en aggregeringsfunktion eller filterkontekst .
Nøglenoter til at forstå sammenhænge i LuckyTemplates
For at opsummere alle de vigtigste ting om kontekst, husk, at beregning i DAX fungerer via en to-trins proces. Det første skridt er altid evalueringskonteksten . Det betyder så meget, hvad evalueringskonteksten er .
Når du forstår, hvad evalueringskonteksten er for ethvert individuelt resultat, forgrener DAX sig derefter på to forskellige måder. Det kan enten beregne via filterkontekst eller via rækkekontekst.
At vælge hvilken kontekst der skal bruges afhænger af hvilken formel du skriver. Så hvis du skriver en simpel aggregeringsformel , vil den så gå hen og beregne den via filterkontekst . Men hvis du skriver en itererende funktion som SUMX, så vil den beregne formlen via rækkekontekst .
Når du først er blevet lidt mere avanceret i DAX, kan du faktisk have flere sammenhænge i den samme funktion. Men før du når dertil, skal du virkelig forstå, hvad kontekst er i sin enkleste form.
Konklusion
At forstå typerne af kontekst er helt afgørende, da du lærer DAX og ønsker at udføre mere avanceret arbejde. Når du begynder at skrive en virkelig avanceret DAX-formel, har du flere sammenhænge, der arbejder på samme tid, og du skal forstå, hvad hver enkelt del af den formel gør for at opnå de ønskede resultater.
Her er nogle anbefalede links, så du kan lære mere om anvendelsen af rækkekontekst inde i LuckyTemplates:
Evalueringskontekst – (1.8) Ultimativ begyndervejledning til DAX
Filterkontekst – (1.9) Ultimativ begynderguide til DAX
Nyd at arbejde igennem denne.
Denne blog indeholder LuckyTemplates TOPN DAX-funktionen, som giver dig mulighed for at få unik indsigt fra dine data, hvilket hjælper dig med at træffe bedre markedsføringsbeslutninger.
Find ud af, hvorfor det er vigtigt at have en dedikeret datotabel i LuckyTemplates, og lær den hurtigste og mest effektive måde at gøre det på.
Denne korte vejledning fremhæver LuckyTemplates mobilrapporteringsfunktion. Jeg vil vise dig, hvordan du kan udvikle rapporter effektivt til mobilenheder.
I denne LuckyTemplates Showcase gennemgår vi rapporter, der viser professionel serviceanalyse fra et firma, der har flere kontrakter og kundeengagementer.
Gå gennem de vigtigste opdateringer til Power Apps og Power Automate og deres fordele og implikationer for Microsoft Power Platform.
Opdag nogle almindelige SQL-funktioner, som vi kan bruge, såsom streng, dato og nogle avancerede funktioner til at behandle eller manipulere data.
I denne tutorial lærer du, hvordan du opretter din perfekte LuckyTemplates-skabelon, der er konfigureret til dine behov og præferencer.
I denne blog vil vi demonstrere, hvordan man lagdelte feltparametre med små multipler for at skabe utrolig nyttig indsigt og visuals.
I denne blog vil du lære, hvordan du bruger LuckyTemplates rangerings- og brugerdefinerede grupperingsfunktioner til at segmentere et eksempeldata og rangordne det efter kriterier.
I denne tutorial vil jeg dække en specifik teknik omkring, hvordan du kun viser Kumulativ Total op til en bestemt dato i dine visuals i LuckyTemplates.