Hva er Power Query & M Language: En detaljert oversikt
Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.
I denne opplæringen lærer du om ulike nøkkelord og funksjoner i DAX Studio med et spesifikt spørringseksempel for hvert enkelt.
Du vil spesifikt lære om søkeordene BESTILL ETTER og START AT, sammen med funksjonene TOPNSKIP og ADDMISSINGITEMS.
Innholdsfortegnelse
Eksempel på DAX-søk: ORDER BY Keyword
Nøkkelordet ORDER BY lar deg sortere et datasett.
Grunnleggende eksempel
For eksempel, ved å bruke ORDER BY nøkkelordet, kan du sortere en kolonne alfabetisk.
Du kan se at dataene på første rad starter med "A." DAX Studios standard sorteringsrekkefølge er stigende .
Hvis du vil at dataene dine skal vises i synkende rekkefølge, skriv DESC . Så i dette eksemplet, i stedet for en A, vil merkekolonnen starte med en "W."
På samme måte, hvis du vil snu den tilbake til en stigende rekkefølge, skriv ASC . Du kan også sortere flere kolonner samtidig. Du kan gjøre dette ved å skrive kolonnene du ønsker med hver av dem atskilt med komma.
Eksempler fra den virkelige verden
La oss nå se på en enkel applikasjon fra den virkelige verden som bruker ORDER BY-nøkkelordet. Dette er det samme eksemplet som ble brukt i .
Du kan se at denne tabellen returnerer 3 kolonner. Den første er produkttypen, som består av kjedelig og trendy. Den andre kolonnen viser totalt salg etter produkttype. Den tredje returnerer prosentandelen av salg.
I dette eksemplet må du opprette en ny kolonne som sorterer produkttypen. Så etter setningen skriver du og deretter navnet på kolonnen du vil opprette.
Formelen for denne kolonnen er den samme som IF-syntaksen, men i stedet for "Trendy" og "Boring", vil denne kolonnen vise "1" for Trendy og "2" for Kjedelig.
For å se denne kolonnen i tabellen, skriv den under EVALUATE-syntaksen.
Du vil da se at en ny kolonne, Produkttypesortering, legges til i tabellen som består av tallene 1 og 2.
For å sortere denne kolonnen, skriv ORDER BY nøkkelordet etter syntaksen. Etter kolonnenavnet skriver du enten ASC eller DESC avhengig av sorteringsrekkefølgen du vil at kolonnen skal ha.
Eksempel på DAX-spørring: START AT
Det neste du lærer er START AT nøkkelordet.
START AT er et utdatert søkeord. Bruken anbefales ikke for de fleste DAX-spørsmål. Det kan imidlertid hende du fortsatt finner noen DAX-kode som gjør bruk av dette. Så det er fortsatt viktig å vite hva det er og i hvilke tilfeller det kan brukes.
Grunnleggende eksempel
Skriv først nøkkelordet EVALUATE. Dette eksemplet bruker tabellen Produkter. Før du skriver START AT, bruk ORDER BY først og spesifiser deretter kolonnene du vil inkludere.
Du kan da skrive START AT. Denne syntaksen vil følge rekkefølgen som ligner på hvordan du skrev kolonnene dine under ORDER BY. For dette eksemplet starter produktnøkkel-kolonnen på «2» og merkevarekolonnen starter på «Contoso».
Når du trykker F5, kan du se i resultattabellen at de angitte kolonnene følger retningen til spørringen.
La oss nå se hva som skjer når en annen kolonne legges til. I dette tilfellet skal Farge-kolonnen starte med "Sølv".
Når du kjører denne spørringen, kan du se at den første oppføringen under Farge-kolonnen er "hvit". Det er ikke garantert at resultatet alltid vil følge alle betingelsene ved bruk av START AT.
For dette eksemplet er det ingen forekomst i produkttabellen som inneholder 2, Contoso og Silver alle i samme rad. I stedet prøver DAX-motoren å lage det beste samsvaret med søket du har opprettet.
Kompleks eksempel
La oss se på et annet eksempel:
Etter EVALUATE skriver du nøkkelordet ORDER BY etterfulgt av de tre spesifiserte kolonnene. Etterpå skriver du START AT. I dette tilfellet skal Farge-kolonnen starte på «Rød», Kjønn-kolonnen skal begynne på «M» og Butikknøkkel-kolonnen skal begynne på «2».
Etter at du har kjørt spørringen, kan du se at DAX-motoren prøvde sitt beste for å matche de angitte parameterne.
I resultatene kan du se at to kolonner er riktige, mens Store Key-kolonnen starter på 199 i stedet for 2. Dette er fordi en Store Key på 2 ikke eksisterer i dette eksemplets datamodell.
Treg DAX-motor
Klikk på Server Timings-knappen under Hjem-fanen.
En ny fane vises nederst. Klikk på Tøm buffer og deretter Kjør- knappen i rullegardinpilen Kjør.
Du kan se at det tar DAX Studio 142ms for å utføre spørringen. Hvis du fjerner START AT-syntaksen og kjører koden på nytt, kan du se at dette kun tar 11 ms å utføre.
Spørringen tar lengre tid å kjøre hvis det er en START AT-syntaks fordi den påkaller en oppførsel til DAX-motoren kalt CallBackDataID .
START AT gjør koden din ekstremt treg. Hvis det ikke er nødvendig å bruke det, bør du unngå det.
Det har en betydelig innvirkning på den generelle ytelsen til DAX-koden du skriver. Det er derfor det er best å bruke andre lignende funksjoner.
Eksempel på DAX-spørring: TOPNSKIP-funksjon
Det neste du vil lære i denne opplæringen er TOPNSKIP- funksjonen. Denne funksjonen ligner på, men den har en subtil forskjell sammen med en ekstra parameter. For å forstå dette ytterligere, la oss se på et eksempel.
TOPN vs TOPNSKIP
Skriv først nøkkelordet EVALUATE. Skriv deretter TOPN-argumentet nedenfor for å se de 100 øverste radene i produkttabellen.
Denne tabellen er også sortert etter stigende rekkefølge med hensyn til produktnøkkelkolonnen.
Bytt ut TOPN med TOPNSKIP. I det andre argumentet, oppgi antall rader du vil hoppe over. I dette eksemplet er 10 spesifisert.
Når du kjører dette, vil du se at Produktnøkkel-kolonnen nå starter på 11 og slutter på 110. Merk at du ikke kan bruke TOPNSKIP-funksjonen inne i en beregnet tabell eller i en tabelldatamodell.
Et annet eksempel
I dette neste eksempelet, la oss se de 5000 beste radene i kundetabellen. Denne tabellen er sortert i stigende rekkefølge i forhold til kolonnen Kjønn.
Hvis du bruker TOPN-funksjonen, kan du se at tabellen returnerer 9 518 rader. Dette betyr at selv om du har spesifisert å bare vise de øverste 5000 radene, ble noen data ufiltrert.
Men hvis du bruker TOPNSKIP-funksjonen, kan du se at tabellen bare returnerer de første 5000 radene i Kjønn-kolonnen.
Så selv om Kundens Kjønn-kolonne har flere regler for et bestemt kjønn, vil TOPNSKIP-funksjonen bare returnere de første 5000 radene. Dette resultatet er ikke garantert når du bruker TOPN-funksjonen.
Eksempel på DAX-spørring: ADDMISSINGITEMS-funksjon
Til slutt, la oss se på ADDMISSINGITEMS -funksjonen i DAX Studio.
Når du bruker SUMMARIZECOLUMNS, vil den som standard prøve å fjerne tomme rader fra resultatet. For eksempel kan vi skrive en spørring som oppsummerer produktfarge, produktmerke og kundekjønn.
Når du trykker F5, kan du se at tabellen returnerer tre kolonner. Kjønn-kolonnen er sammensatt av 3 typer kjønn: Mann, Kvinne og Blank. Blank representerer selskapet. Du kan også se at den returnerer 333 rader.
Men hvis du oppretter en Total Sales-kolonne, vil SUMMARISECOLUMNS-filteret fjerne radene som inneholder tomme verdier for Total Sales. I stedet for 333 rader inneholder tabellen nå bare 323 rader.
Det er 2 alternativer for å bringe tilbake disse radene. Det første alternativet er å legge til en null etter Totalt salg. I resultatene kan du se at 10 rader returnerer en nullverdi for Totalt salg.
Dette alternativet gir imidlertid ikke alltid det beste resultatet. I stedet er det en spesifikk funksjon du kan bruke for å løse dette problemet: ADDMISSINGITEMS-funksjonen .
For å bruke denne funksjonen, plasser denne etter EVALUATE. I det første argumentet skriver du kolonnene. Du må også lime inn disse kolonnene i groupBy-parameteren til SUMMARIZECOLUMNS.
Når du kjører denne spørringen, vil du se at tabellen nå returnerer 333 rader.
Hvis du sorterer kolonnene Totalt salg og fjerner nullen, vil tabellen returnere tomme verdier under kolonnen Totalt salg.
Så i stedet for å rapportere en null, returnerer tabellen en blank for rader som ble fjernet av SUMMARISECOLUMNS-funksjonen.
Ved å bruke ADDMISSINGITEMS og FILTER
Du kan også bruke funksjonen ADDMISSINGITEMS sammen med. La oss for eksempel filtrere ut radene som inneholder «Tailspin Toys». I spørringen står det at merkekolonnen ikke må inneholde ( <> ) Tailspin Toys.
Når du trykker F5, kan du se at tabellen nå kun returnerer 331 rader. Så de to radene som inneholder merket "Tailspin Toys" ble fjernet.
Konklusjon
De to nøkkelordene og to funksjonene som er omtalt i denne opplæringen er grunnleggende kunnskap du må ha når du oppretter spørringer i DAX Studio. Disse vil komme godt med når du arbeider med mer komplekse applikasjoner i den virkelige verden.
DAX Studio er et kraftig verktøy for å utføre og analysere DAX-spørringer. Det er viktig å lære det grunnleggende om koding av denne programvaren, slik at det blir enklere når du skal håndtere avanserte spørsmål i fremtiden.
LuckyTemplates-eksperter
Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.
Lær hvordan du lager en paginert rapport, legger til tekster og bilder og deretter eksporterer rapporten til ulike dokumentformater.
Lær hvordan du bruker SharePoint-automatiseringsfunksjonen til å lage arbeidsflyter og hjelpe deg med å mikroadministrere SharePoint-brukere, -biblioteker og -lister.
Utvid rapportutviklingsferdighetene dine ved å bli med i en dataanalyseutfordring. Akseleratoren kan hjelpe deg å bli en LuckyTemplates-superbruker!
Lær hvordan du beregner løpende totaler i LuckyTemplates ved hjelp av DAX. Løpende totaler lar deg ikke bli fanget opp i et individuelt resultat.
Forstå konseptet med variabler i DAX i LuckyTemplates og implikasjonene av variabler for hvordan målene dine beregnes.
Lær mer om det tilpassede visuelle bildet kalt LuckyTemplates Slope-diagram, som brukes til å vise økning/reduksjon for en enkelt eller flere beregninger.
Oppdag fargetemaene i LuckyTemplates. Disse er avgjørende for at rapportene og visualiseringene dine skal se ut og fungere sømløst.
Å beregne et gjennomsnitt i LuckyTemplates kan gjøres på mange måter for å gi deg nøyaktig informasjon for bedriftsrapportene dine.
La oss fordype oss i Standard LuckyTemplates-tema, og gjennomgå noen av funksjonene som er innebygd i selve LuckyTemplates Desktop-applikasjonen.