Skillnaden mellan SUM och SUMX i Lucky Templates

Det råder fortfarande mycket förvirring om skillnaden mellanmoti LuckyTemplates. Detta är nyckelkunskap som användarna måste behärska eftersom båda funktionerna kan användas i olika scenarier, men det finns fall där den ena är mer effektiv än den andra. Du kan se hela videon av denna handledning längst ner på den här bloggen.

Jag kommer att fokusera på ett exempel här som skulle visa skillnaden mellan de två. Men innan jag hoppar in i det exemplet är det viktigt att förstå skillnaden mellan en aggregerande funktion och en itererande funktion.

Innehållsförteckning

Aggregatorer vs Iteratorer

När det gäller DAX finns det två typer av beräkningsmotorer – aggregatorerna och iteratorerna.

Aggregerande funktioner inkluderar SUM ,,,och. Iteratorer, å andra sidan, är funktioner som har ett X i slutet, som SUMX .

Itererande funktioner går igenom varje enskild rad i en tabell för att lägga till logik till var och en av dessa rader.

Aggregerande funktioner tittar på hela kolumnen som blir över efter att sammanhanget har placerats i en formel. Därifrån görs en enda aggregering för hela kolumnen samtidigt.

SUMMA Som Aggregator

Hur används SUM som en aggregator?

Skillnaden mellan SUM och SUMX i Lucky Templates

I det här exemplet kommer jag att beräkna den totala intäkterna i provdata som ges.

Kontexten är alltid viktig här. I det här fallet är varje specifikt datum sammanhanget för varje specifikt resultat.

Skillnaden mellan SUM och SUMX i Lucky Templates

Om jag gräver djupare i den här tabellen kommer den att visa att det finns en direkt relation från det datum som går in i tabellen Försäljning .

Skillnaden mellan SUM och SUMX i Lucky Templates

Om jag sedan tittar på data som fungerar under den här modellen, är det så här allt passar ihop.

Skillnaden mellan SUM och SUMX i Lucky Templates

Så relationen är länkad till kolumnen Orderdatum här. När specifika datum från den här kolumnen har filtrerats visas motsvarande resultat under kolumnen Intäkt.

Därifrån skulle SUMMA bara göra en stor beräkning av de filtrerade resultaten.

SUMX som en iterator

Nu ska jag använda SUMX på samma exempeldata så att du kan se skillnaden. Jag kan faktiskt beräkna för den intäkten utan att röra kolumnen Intäkt.

När den används kommer den alltid att be om ett bord. Observera att antingen en fysisk tabell eller en virtuell tabell kan användas här.

Skillnaden mellan SUM och SUMX i Lucky Templates

För att komma fram till Intäkten ska jag välja tabellen Försäljning. Sedan ska jag placera ett uttryck, som kan vara ett mått eller en specifik kolumn från den tabellen i den här formeln så att den kan börja köra logik på varje rad. Uttrycket, som förklaras här, returnerar summan av ett uttryck som utvärderats för varje rad i tabellen.

Skillnaden mellan SUM och SUMX i Lucky Templates

Eftersom provdata inkluderar beställningskvantiteten, kommer jag att använda det här för att få summan. Jag kommer också att använda enhetspriset.

Skillnaden mellan SUM och SUMX i Lucky Templates

När jag väl drar in den formeln i rapporten är resultaten exakt desamma.

Skillnaden mellan SUM och SUMX i Lucky Templates

Naturligtvis visar de båda samma resultat eftersom de båda härleder data från samma två kolumner – orderkvantiteten och enhetspriset.

Skillnaden mellan SUM och SUMX i Lucky Templates

Varför använda SUMX om det ändå ger samma resultat som SUM ?

Med SUMX tillämpas logiken inte bara på en hel kolumn, utan på varje enskild rad i den kolumnen. Faktum är att jag skulle kunna ta bort kolumnen Intäkt och fortfarande kunna hämta specifika resultat.

Så föreställ dig att logiken tillämpas på varje rad. Den multiplicerar beställningsmängden och enhetspriset för den första raden och sparar det sedan i minnet. Det gör samma sak på den andra raden och alla andra rader efter det, och sparar varje enskilt resultat.

Detta betyder att det som används för att beräkna SUMX i slutändan inte är fysiska data på bordet, utan resultaten som sparats i minnet .




Slutsats

Förhoppningsvis kunde jag förklara den huvudsakliga skillnaden mellan SUM vs SUMX i LuckyTemplates, särskilt för de som fortfarande får kläm på vad LuckyTemplates verkligen kan göra.

Tumregeln är om det är ett enkelt, okomplicerat scenario som kan lösas med en aggregeringsfunktion, använd SUM. Men om mer avancerad logik krävs, använd SUMX.

SUMX kommer också att vara användbart i fall där du har tusentals till miljontals rader. Så länge de tabeller och kolumner som refereras till i dina mått finns där, skulle användning av itererande funktioner göra processen mer effektiv.

Med vänliga hälsningar,


Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.

Extrahera LuckyTemplates-teman och bilder från PBIX

Extrahera LuckyTemplates-teman och bilder från PBIX

Lär dig hur du tar isär en PBIX-fil för att extrahera LuckyTemplates-teman och bilder från bakgrunden och använda den för att skapa din rapport!

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

Excel Formler Fuskblad: Mellanvägledning

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

LuckyTemplates Kalendertabell: Vad är det och hur man använder det

Python i LuckyTemplates: Hur man installerar och ställer in

Python i LuckyTemplates: Hur man installerar och ställer in

Lär dig hur du installerar programmeringsspråket Python i LuckyTemplates och hur du använder dess verktyg för att skriva koder och visa bilder.

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Beräkna dynamiska vinstmarginaler – enkel analys av LuckyTemplates med DAX

Lär dig hur du beräknar dynamiska vinstmarginaler vid sidan av LuckyTemplates och hur du kan få fler insikter genom att gräva djupare i resultaten.

Sortering av datumtabellkolumner i LuckyTemplates

Sortering av datumtabellkolumner i LuckyTemplates

Lär dig hur du sorterar fälten från en utökad datumtabells kolumner korrekt. Detta är en bra strategi att göra för svåra fält.

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

Hitta dina bästa produkter för varje region i LuckyTemplates med DAX

I den här artikeln går jag igenom hur du kan hitta dina toppprodukter per region med hjälp av DAX-beräkningar i LuckyTemplates, inklusive TOPN- och CALCULATE-funktionerna.

Skräpdimension: Vad är det och varför det är allt annat än skräp

Skräpdimension: Vad är det och varför det är allt annat än skräp

Lär dig hur du använder en skräpdimension för flaggor med låg kardinalitet som du vill infoga i din datamodell på ett effektivt sätt.