Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

För det här blogginlägget vill jag demonstrera funktionen CROSSJOIN . Jag ska visa ett exempel på hur jag använde det, och sedan förklara när och var du kan använda det också. Du kan se hela videon av denna handledning längst ner på den här bloggen.

CROSSJOIN är en riktigt effektiv funktion som du kan använda inuti LuckyTemplates för att i huvudsak binda samman två datatabeller.

Innehållsförteckning

Använda CROSSJOIN för att förenkla formeln

Det handlar inte bara om att välja två tabeller från dina datamängder. Du kan manipulera tabellerna inuti CROSSJOIN -funktionen så att de kan sammanfogas på ett mer meningsfullt sätt.

Det finns en hel del analys som du kanske vill uppnå inuti LuckyTemplates och den här funktionen kommer att förenkla det oerhört mycket för dig.

Det förenklar de funktioner eller mått som du behöver skriva för att skapa dessa beräkningar och i slutändan visualisera dem på ett övertygande sätt.

Hur man använder funktionen CROSSJOIN

I det här exemplet ville jag skapa budgetar automatiskt, men jag ville inte skapa generiska månads- eller årsbudgetar. Jag ville skapa budgetar per produkt och månad.

Om du tittar på den här modellen finns produkterna i en tabell medan våra månader finns i en annan tabell.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Vi har ingen tabell där både produkter och budgetar finns i den. Det finns inte så vi måste skapa det. Vad jag behöver göra är att blanda ihop dessa kolumner från dessa individuella tabeller för att skapa en ny tabell och använda lite logik baserat på dessa två speciella element i min datamodell.

Det är här CROSSJOIN kommer in. Det låter dig blanda två kolumner eller en rad kolumner från olika tabeller och göra dem till en. Med hjälp av CROSSJOIN lyckades jag skapa tabellen Produktbudgetar .

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Det finns förmodligen andra sätt att göra detta på, men detta är det mest effektiva sättet att återskapa en tabell ur ingenting.

För att uppnå denna tabell använde jag andra tabellfunktioner också, som jag kort ska gå igenom men jag kommer att fokusera på CROSSJOIN för nu.

Den här funktionen gjorde det möjligt för mig att skapa kolumnen MonthName som kom från tabellen Datum och kolumnen Produkt-ID som kom från produkttabellen. Så det är två helt olika tabeller som jag slog ihop för att skapa en annan tabell.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Hur gjorde jag det? Låt oss skapa en helt ny tabell genom att klicka på den här ikonen och använda DAX-formeln.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Jag ska skapa en demotabell här och använda funktionen CROSSJOIN . Som du kan se är IntelliSense ganska bra på kodkomplettering; den berättar vad vi behöver veta om funktionen vi precis skrev.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Det informerar oss om att CROSSJOIN "returerar en tabell som är en korskoppling av de angivna tabellerna."

Så i princip betyder det att funktionen kommer att slå samman två tabeller.

Jag börjar med VÄRDEN , som gör att vi enkelt kan extrahera eller skapa en tabell för en viss kolumn.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Sedan lägger jag till MonthName . Sedan lägger jag till VALUES igen och sedan mitt produkt-ID .

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Kom ihåg att detta inte behöver vara en enda datumkolumn. Det kan vara flera kolumner i en tabell. En tabell kan skapas virtuellt med hjälp av en formel och en rad olika tabellfunktioner. Så dessa är alla en derivata av alla dessa DAX-formler, medan VALUES bara ger en kolumn med information.

Att använda CROSSJOIN ger mig varenda produkt och månad.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Så här använder du CROSSJOIN – för att skapa dessa helt nya tabeller som inte fanns tidigare och effektivt integrera dem i dina modeller. Kom ihåg att dessa kommer från två helt olika tabeller – tabellerna Datum och Produktbudgetar .

Använda funktionerna DISTINCT och SUMMARIZE

Låt mig gå tillbaka till mitt produktbudgetmått här. Uppenbarligen är detta mer komplext eftersom jag istället för att använda VALUES har använt olika funktioner.

Hur man använder CROSSJOIN-funktionen – LuckyTemplates & DAX Tutorial

Du behöver inte använda VALUES om du kan använda DISTINCT , som gör samma sak, men det finns några små skillnader.

SUMMARIZE - funktionen erbjuder också mycket mer flexibilitet. Du kan lägga till mycket fler kolumner med den här funktionen jämfört med VALUES och DISTINCT .

I det här specifika scenariot ville jag skapa mina budgetar för ett visst år genom att ta in förra årets resultat. Jag har lagt till en tillväxtfaktor på 7,5 % till den och visat upp den i den här specifika tabellen.

Istället för att gå igenom den galna processen att få ihop alla budgetar och göra en gissning, har jag skapat dem automatiskt genom att använda historisk information , lägga en faktor på den och sedan lägga den i en tabell med CROSSJOIN .

Andra sätt att använda CROSSJOIN

Om du tänker efter kan du använda CROSSJOIN på olika sätt. I det här fallet har jag använt det på produkter.

Men du kan använda exakt samma teknik med CROSSJOIN medan du arbetar med dina regionala budgetar, säljarbudgetar eller kundbudgetar.

Slutsats

CROSSJOIN kommer att använda de två borden som du placerar i den och föra dem samman.

Om du kan förstå hur den här tekniken faktiskt fungerar, kommer du att vara i en utmärkt position för att köra den här typen av analys i dina egna modeller.

Jag demonstrerade också CROSSJOIN -funktionen i en nyligen genomförd workshop i LuckyTemplates webinarserie , där jag täckte många andra tekniker att använda när man analyserar budgetar och prognoser kontra faktiska resultat.

Lycka till!


Upptäck unika insikter med LuckyTemplates TOPN-funktion

Upptäck unika insikter med LuckyTemplates TOPN-funktion

Den här bloggen innehåller LuckyTemplates TOPN DAX-funktion, som gör att du kan få unika insikter från dina data, vilket hjälper dig att fatta bättre marknadsföringsbeslut.

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Lär dig några fantastiska analytiska tekniker som vi kan göra för datamodellering i LuckyTemplates med hjälp av DAX-stödtabeller.

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Här dyker vi in ​​i LuckyTemplates Advanced DAX och implementerar rankningslogik för att få en mycket unik insikt. Jag visar också upp måttförgrening i det här exemplet.

LuckyTemplates What-If-parameterfunktion

LuckyTemplates What-If-parameterfunktion

Den här bloggen introducerar den nya funktionen i LuckyTemplates, analysparametern What-If. Du kommer att se hur det gör allt snabbt och enkelt för din scenarioanalys.

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Lär dig hur du avgör om din intäktstillväxt är bra genom att kontrollera om dina marginaler ökade med hjälp av LuckyTemplates mäter förgrening.

LuckyTemplates parametrar via frågeredigerare

LuckyTemplates parametrar via frågeredigerare

Lär dig och förstå hur du kan skapa och använda LuckyTemplates-parametrar som är en kraftfull funktion i frågeredigeraren.

Runda stapeldiagram – En visualisering för din instrumentpanel

Runda stapeldiagram – En visualisering för din instrumentpanel

Denna handledning kommer att diskutera hur man skapar ett runt stapeldiagram med Charticulator. Du kommer att lära dig hur du designar dem för din LuckyTemplates-rapport.

PowerApps funktioner och formler | En introduktion

PowerApps funktioner och formler | En introduktion

Lär dig hur du använder PowerApps funktioner och formler för att förbättra funktionaliteten och ändra ett beteende i vår Power Apps canvas-app.

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.