Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

I denne vejledning lærer du om forskellige nøgleord og funktioner i DAX Studio med et specifikt forespørgselseksempel for hver enkelt.

Specifikt vil du lære om søgeordene BESTIL EFTER og START AT sammen med funktionerne TOPNSKIP og ADDMISSINGITEMS.

Indholdsfortegnelse

Eksempel på DAX-forespørgsel: ORDER BY Keyword

Nøgleordet ORDER BY giver dig mulighed for at sortere et datasæt.

Grundlæggende eksempel

For eksempel kan du sortere en kolonne alfabetisk ved at bruge søgeordet ORDER BY.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Du kan se, at dataene i første række starter med "A." DAX Studios standardsorteringsrækkefølge er stigende .

Hvis du vil have dine data vist i faldende rækkefølge, så skriv DESC . Så i dette eksempel starter mærkesøjlen i stedet for et A med et "W".

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

På samme måde, hvis du vil vende det tilbage til en stigende rækkefølge, skal du skrive ASC . Du kan også sortere flere kolonner på én gang. Du kan gøre dette ved at skrive de ønskede kolonner med hver enkelt adskilt af et komma.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Eksempel fra den virkelige verden

Lad os nu se på en simpel applikation i den virkelige verden, der bruger søgeordet ORDER BY. Dette er det samme eksempel, der blev brugt i .

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Du kan se, at denne tabel returnerer 3 kolonner. Den første er produkttypen, der består af Boring og Trendy. Den anden kolonne viser det samlede salg efter produkttype. Den tredje returnerer Salgsprocenten.

I dette eksempel skal du oprette en ny kolonne, der sorterer produkttypen. Så efter udsagnet skal du skrive og derefter navnet på den kolonne, du vil oprette.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Formlen for denne kolonne er den samme som IF-syntaksen, men i stedet for "Trendy" og "Kedelig" vil denne kolonne vise "1" for Trendy og "2" for Kedelig.

For at se denne kolonne i tabellen skal du skrive den under EVALUATE-syntaksen.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Du vil derefter se, at en ny kolonne, Product Type Sort, tilføjes til tabellen bestående af tallene 1 og 2.

For at sortere denne kolonne skal du skrive nøgleordet ORDER BY efter syntaksen. Efter kolonnenavnet skal du skrive enten ASC eller DESC afhængigt af den sorteringsrækkefølge, du ønsker, at kolonnen skal have.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Eksempel på DAX-forespørgsel: START KL

Den næste ting, du lærer, er søgeordet START AT .

START AT er et forældet søgeord. Dens brug anbefales ikke til de fleste DAX-forespørgsler. Du kan dog stadig finde noget DAX-kode, der gør brug af dette. Så det er stadig vigtigt at vide, hvad det er, og i hvilke tilfælde det kan bruges.

Grundlæggende eksempel

Skriv først nøgleordet EVALUER. Dette eksempel bruger tabellen Produkter. Før du skriver START AT, skal du først bruge BESTIL EFTER og derefter angive de kolonner, du vil have med.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner


Du kan så skrive START AT. Denne syntaks vil følge den rækkefølge, der svarer til, hvordan du skrev dine kolonner under ORDER BY. I dette eksempel starter produktnøglekolonnen ved "2", og mærkekolonnen starter ved "Contoso".

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du trykker på F5, kan du se i resultattabellen, at de angivne kolonner følger forespørgslens retning.

Lad os nu se, hvad der sker, når endnu en kolonne tilføjes. I dette tilfælde skal farvekolonnen starte ved "Sølv".

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du kører denne forespørgsel, kan du se, at den første post under kolonnen Farve er "hvid". Det er ikke garanteret, at resultatet altid følger alle betingelserne ved brug af START AT.

For dette eksempel er der ingen forekomst i tabellen Produkter, der indeholder 2, Contoso og Silver alle i samme række. I stedet forsøger DAX-motoren at skabe det bedste match til den forespørgsel, du har oprettet.

Kompleks eksempel

Lad os se på et andet eksempel:

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Efter EVALUATE, skriv ORDER BY nøgleordet efterfulgt af de tre specificerede kolonner. Skriv bagefter START AT. I dette tilfælde skal kolonnen Farve starte med "Rød", kolonnen Køn skal starte med "M", og kolonnen Butiksnøgle skal starte med "2".

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du har kørt forespørgslen, kan du se, at DAX-motoren gjorde sit bedste for at matche de angivne parametre.

I resultaterne kan du se, at to kolonner er korrekte, mens kolonnen Store Key starter ved 199 i stedet for 2. Dette skyldes, at en Store Key på 2 ikke findes i dette eksempels datamodel.

Langsom DAX-motor

Klik på knappen Server Timings under fanen Hjem.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

En ny fane vises i bunden. Klik på Ryd cache og derefter Kør- knappen, der findes i rullemenuen Kør.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Du kan se, at det tager DAX Studio 142ms at udføre forespørgslen. Hvis du fjerner START AT-syntaksen og kører koden igen, kan du se, at det kun vil tage 11 ms at udføre.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Forespørgslen tager længere tid at køre, hvis der er en START AT-syntaks, fordi den påkalder en adfærd fra DAX-motoren kaldet CallBackDataID .

START AT gør din kode ekstremt langsom. Hvis det ikke er påkrævet at bruge det, skal du hellere undgå det.

Det har en betydelig indflydelse på den overordnede ydeevne af den DAX-kode, du skriver. Derfor er det bedst at bruge andre lignende funktioner.

Eksempel på DAX-forespørgsel: TOPNSKIP-funktion

Den næste ting, du lærer i denne tutorial, er TOPNSKIP- funktionen. Denne funktion ligner, men den har en subtil forskel sammen med en ekstra parameter. For yderligere at forstå dette, lad os se på et eksempel.

TOPN vs TOPNSKIP

Skriv først nøgleordet EVALUER. Skriv derefter TOPN-argumentet nedenfor for at se de øverste 100 rækker i produkttabellen.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Denne tabel er også blevet sorteret efter stigende rækkefølge med hensyn til kolonnen Produktnøgle.

Udskift nu TOPN med TOPNSKIP. I det andet argument skal du angive antallet af rækker, du vil springe over. I dette eksempel er 10 angivet.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du kører dette, vil du se, at kolonnen Produktnøgle nu starter ved 11 og slutter ved 110. Bemærk, at du ikke kan bruge TOPNSKIP-funktionen inde i en beregnet tabel eller i en tabelformet datamodel.

Et andet eksempel

Lad os i dette næste eksempel se de øverste 5000 rækker i kundetabellen. Denne tabel er sorteret i stigende rækkefølge i forhold til kolonnen Køn.

Hvis du bruger TOPN-funktionen, kan du se, at tabellen returnerer 9.518 rækker. Dette betyder, at selvom du har angivet kun at vise de øverste 5000 rækker, blev nogle data efterladt ufiltrerede.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Men hvis du bruger TOPNSKIP-funktionen, kan du se, at tabellen kun returnerer de første 5.000 rækker i kolonnen Køn.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Så selvom kundens køn-kolonne har flere regler for et bestemt køn, vil TOPNSKIP-funktionen kun returnere de første 5.000 rækker. Dette resultat er ikke garanteret, når du bruger TOPN-funktionen.

Eksempel på DAX-forespørgsel: ADDMISSINGITEMS-funktion

Lad os endelig se på ADDMISSINGITEMS -funktionen i DAX Studio.

Når du bruger SUMMARIZECOLUMNS, vil den som standard forsøge at fjerne tomme rækker fra resultatet. For eksempel kan vi skrive en forespørgsel, der opsummerer produktfarve, produktmærke og kundekøn.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du trykker på F5, kan du se, at tabellen returnerer tre kolonner. Kolonnen Køn er sammensat af 3 typer køn: Mand, Kvinde og Blank. Blank repræsenterer virksomheden. Du kan også se, at den returnerer 333 rækker.

Men hvis du opretter en kolonne i alt salg, vil SUMMARIZECOLUMNS-filteret fjerne de rækker, der indeholder tomme værdier for det samlede salg. I stedet for 333 rækker indeholder tabellen nu kun 323 rækker.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Der er 2 muligheder for at bringe disse rækker tilbage. Den første mulighed er at tilføje et nul efter det samlede salg. I resultaterne kan du se, at 10 rækker returnerer en nulværdi for Samlet salg.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Denne mulighed giver dog ikke altid det bedste resultat. I stedet er der en specifik funktion, du kan bruge til at løse dette problem: ADDMISSINGITEMS-funktionen .

For at bruge denne funktion skal du placere denne efter EVALUATE. I det første argument skal du skrive kolonnerne. Du skal også indsætte disse kolonner i parameteren groupBy for SUMMARIZECOLUMNS.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du kører denne forespørgsel, vil du se, at tabellen nu returnerer 333 rækker.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Hvis du sorterer kolonnerne Samlet salg og fjerner nullet, returnerer tabellen tomme værdier under kolonnen Samlet salg.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Så i stedet for at rapportere et nul, returnerer tabellen et tomt felt for rækker, der blev fjernet af funktionen SUMMARISECOLUMNS.

Brug af ADDMISSINGITEMS og FILTER

Du kan også bruge funktionen ADDMISSINGITEMS sammen med. Lad os f.eks. bortfiltrere rækkerne, der indeholder "Tailspin-legetøj". I forespørgslen står der, at kolonnen Brand ikke må indeholde ( <> ) Tailspin-legetøj.

Eksempel på DAX-forespørgsel, der bruger forskellige søgeord og funktioner

Når du trykker på F5, kan du se, at tabellen nu kun returnerer 331 rækker. Så de to rækker med mærket "Tailspin Toys" blev fjernet.

Konklusion

De to nøgleord og to funktioner, der diskuteres i denne vejledning, er grundlæggende viden, du skal have, når du opretter forespørgsler i DAX Studio. Disse vil være nyttige, når du har at gøre med mere komplekse applikationer fra den virkelige verden.

DAX Studio er et kraftfuldt værktøj til at udføre og analysere DAX-forespørgsler. Det er vigtigt at lære de grundlæggende kodningsprincipper i denne software, så det er nemmere, når du beskæftiger dig med avancerede forespørgsler i fremtiden.

LuckyTemplate-eksperter

Leave a Comment

Oplev unik indsigt ved hjælp af LuckyTemplates TOPN-funktion

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.

Oprettelse af en datotabel i LuckyTemplates

Oprettelse af en datotabel i LuckyTemplates

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å.

LuckyTemplates Mobile Reporting Tips og teknikker

LuckyTemplates Mobile Reporting Tips og teknikker

Denne korte vejledning fremhæver LuckyTemplates mobilrapporteringsfunktion. Jeg vil vise dig, hvordan du kan udvikle rapporter effektivt til mobilenheder.

Professionelle serviceanalyserapporter i LuckyTemplates

Professionelle serviceanalyserapporter i LuckyTemplates

I denne LuckyTemplates Showcase gennemgår vi rapporter, der viser professionel serviceanalyse fra et firma, der har flere kontrakter og kundeengagementer.

Microsoft Power Platform-opdateringer | Microsoft Ignite 2021

Microsoft Power Platform-opdateringer | Microsoft Ignite 2021

Gå gennem de vigtigste opdateringer til Power Apps og Power Automate og deres fordele og implikationer for Microsoft Power Platform.

Almindelige SQL-funktioner: En oversigt

Almindelige SQL-funktioner: En oversigt

Opdag nogle almindelige SQL-funktioner, som vi kan bruge, såsom streng, dato og nogle avancerede funktioner til at behandle eller manipulere data.

LuckyTemplates skabelonoprettelse: Guide og tips

LuckyTemplates skabelonoprettelse: Guide og tips

I denne tutorial lærer du, hvordan du opretter din perfekte LuckyTemplates-skabelon, der er konfigureret til dine behov og præferencer.

Feltparametre og små multipler i LuckyTemplates

Feltparametre og små multipler i LuckyTemplates

I denne blog vil vi demonstrere, hvordan man lagdelte feltparametre med små multipler for at skabe utrolig nyttig indsigt og visuals.

LuckyTemplates-rangering og brugerdefineret gruppering

LuckyTemplates-rangering og brugerdefineret gruppering

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.

Viser kun kumulativ total op til en bestemt dato i LuckyTemplates

Viser kun kumulativ total op til en bestemt dato i LuckyTemplates

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.