Skapa en datumtabell i LuckyTemplates
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
I den här handledningen får du lära dig hurFunktionen fungerar i DAX med hjälp av panelen Server Timings och dess frågeplan.
CROSSJOIN-funktionen kan användas för att skapa en kartesisk produkt av två tabeller. En kartesisk produkt är en uppsättning av alla möjliga kombinationer av rader från två eller flera tabeller.
Nedanstående kommer att användas i denna handledning.
Du kan se att CROSSJOIN-funktionen resulterar i en kombination av produkten Varumärke och Färg även om några av dessa kombinationer inte finns i . Detta resulterar i en tabell med totalt 176 rader.
På fliken Servertider hämtar den första frågan varumärket från tabellen Produkter, medan den andra frågan hämtar färgen.
I den första raden returnerar resultatet i form av en tabell. Den andra och tredje raden i produkttabellen skannar färgen respektive varumärket.
När data väl har tagits emot, itererar Formula Engine över tabellen och producerar en kombination av båda kolumnerna. CrossApply på rad 2 motsvarar funktionen CROSSJOIN.
Innehållsförteckning
Filtrera CROSSJOIN-resultat i DAX
Du kan användafunktion för att filtrera resultaten av en CROSSJOIN. Du kan till exempel använda den för att bara visa produkter som är röda.
Kom dock ihåg att du inte kan placera en CROSSJOIN-funktion i ett FILTER-argument .
Om du nu kör den här koden och kollar fliken Servertider ser du att filterkontexten inte visas som en WHERE-sats i frågan.
CROSSJOIN-funktionen kan endast lösas av . Koden fungerar inte eftersom den hamnar mellan FILTER och som är funktioner som bara kan lösas av . Således fick CROSSJOIN att slingan mellan dessa två funktioner bröts.
Därför måste du placera FILTER-funktionen i CROSSJOIN-argumentet för att filtret ska fungera.
Om du nu kör den här koden och kollar fliken Server Timings, ser du att FILTER-funktionen nu representeras av WHERE-satsen.
I den logiska frågeplanen kan du se att istället för filteroperatören används Filter VertiPaq .
Detta beror på att det nya filtervillkoret i koden kan tryckas ner till Storage Engine. Efter att resultatet har returnerats utförs sedan CROSSJOIN-argumentet inuti Formula Engine.
IN-operatören
Du kan också användaoperator istället för likhetstecknet i ett FILTER-argument.
IN-operatorn kan användas inom expressionsargumentet för FILTER-funktionen för att filtrera en tabell baserat på om ett värde finns i en värdelista eller i en tabell.
När du använder FILTER – I kombination måste DAX-motorn utföra ett IsEmpty- filter som bekräftar om produktens färg är röd eller svart.
Lägg till kolumn Total försäljning i CROSSJOIN DAX-resultat
Andra funktioner kan också användas tillsammans med CROSSJOIN.
Du kan använda funktionen för att lägga till ytterligare en kolumn i din tabell och sedan skriva argumentet för den information du vill visa.
I det här exemplet lägger vi till kolumnen Total försäljning.
När du kör koden kommer resultaten fortfarande att returnera 176 rader. Vissa kombinationer kommer dock att ha tomma värden i kolumnen Total försäljning. Detta beror på att dessa kombinationer inte har en motsvarande rad i tabellen Försäljning.
På fliken Servertider väljer koden först varumärke och färg. Den summerar sedan produkten av kvantitet och försäljningsnettopris.
I det här fallet hämtar DAX-motorn först alla kombinationer av varumärke och färg som finns i tabellen Produkter, tillsammans med de med motsvarande rad i tabellen Försäljning. Sedan hämtar den märkes- och färgkolumnerna separat.
I den fysiska frågeplanen kan du se två datacchar; en för märket och en annan för färgen. När du multiplicerar deras totala rekord får du 176 rader.
Sedan görs en uppslagning på dessa 176 rader för att se om de har ett motsvarande värde i försäljningstabellen. Du kan se att endast 111 rader har värden. De andra 65 raderna kommer att returnera tomma.
Dessutom, om du lägger till fler kolumner i CROSSJOIN-argumentet kommer resultatet också att returnera fler rader.
Slutsats
Funktionen DAX CROSSJOIN genererar en ny tabell genom att kombinera rader från en tabell med rader från en annan. Denna funktion liknar CROSS JOIN-satsen i SQL och kan användas för att skapa mer komplexa frågor i din datamodell.
Den kan generera en lista över alla möjliga värdekombinationer från två eller flera tabeller. Den kan också användas för att snabbt skapa en ny tabell med ett stort antal rader, vilket kan vara användbart för dataanalys, testning eller prestandabenchmarking.
Sammantaget är CROSSJOIN-funktionen ett praktiskt verktyg i scenarier där du behöver kombinera data från flera tabeller eller generera en lista med alla möjliga kombinationer.
Med vänliga hälsningar,
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.
I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.
Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.
Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.
I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.
I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.
I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.
I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.
Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.