Hurtig start: Lær de grundlæggende DAX-funktioner på 30 minutter

Denne Hurtigstarter er for brugere, der er ny for Power Pivot i Excel-eller tabel modelprojekter, der er oprettet i SQL Server-data værktøjer. Det er meningen, at du vil give dig en hurtig og nem introduktion til, hvordan du kan bruge DAX (Data Analysis Expressions) til at løse et antal grundlæggende datamodellering og analyse problemer. Dette emne indeholder begrebsmæssige oplysninger, en række opgaver, du kan udføre, og nogle få test til at teste, hvad du har lært. Når du har fuldført dette emne, skal du have en god forståelse af de mest grundlæggende begreber i DAX.

Hvad er DAX?

DAX er en samling af funktioner, operatorer og konstanter, der kan bruges i en formel eller et udtryk til at beregne og returnere en eller flere værdier. Hvis du blot har angivet mere, kan DAX hjælpe dig med at oprette nye oplysninger fra data, der allerede findes i din model.

Hvorfor er DAX så vigtig?

Det er nemt at oprette en projektmappe og importere nogle data til den. Du kan endda oprette pivottabeller eller pivotdiagrammer, der viser vigtige oplysninger uden brug af DAX-formler. Men hvad nu, hvis du har brug for at analysere vigtige salgsdata på tværs af flere produktkategorier og for forskellige datointervaller? Eller du har brug for at kombinere vigtige lagerdata fra flere tabeller i forskellige datakilder? DAX-formler indeholder også disse funktioner og mange andre vigtige funktioner. Hvis du vil lære at oprette effektive DAX-formler, kan du få mest muligt ud af dine data. Når du får de oplysninger, du har brug for, kan du begynde at løse problemer med reel virksomhed, der påvirker din nederste linje. Dette er Business Intelligence, og DAX får hjælp til at komme derhen.

Forudsætninger

Du er muligvis allerede vant til at oprette formler i Microsoft Excel. Det vil være nyttigt at forstå DAX, men selvom du ikke har erfaring med Excel-formler, vil de koncepter, der er beskrevet her, hjælpe dig med at komme i gang med at oprette DAX-formler og løse almindelige BI-problemer med det samme.

Vi vil fokusere specifikt på forstå DAX-formler, der bruges i beregninger. Du burde allerede være bekendt med grundlæggende begreber fra både beregnede kolonner og målinger (også kaldet beregnede felter), som begge er beskrevet i Power Pivot hjælp. Du bør også være bekendt med Power Pivot i Excel-oprettelses miljøet og-værktøjer.

Eksempelprojekt mappe

Den bedste måde at lære DAX på er at oprette nogle grundlæggende formler, bruge det sammen med nogle faktiske data og se resultaterne for dig selv. Eksemplerne og opgaverne her bruger contoso-eksempel DAX-formlerne. xlsx-projektmappe. Du kan downloade projektmappen fra http://go.microsoft.com/fwlink/?LinkID=237472&clcid = 0x409. Når du har hentet projektmappen på computeren, skal du åbne den og derefter åbne Power Pivot s vinduet.

Lad os begynde!

Vi vil ramme DAX omkring tre meget vigtige grundlæggende begreber: syntaks, funktioner og kontekst. Der er selvfølgelig andre vigtige begreber i DAX, men hvis du forstår disse tre begreber, opnår du det bedste grundlag for at opbygge dine DAX-færdigheder.

Syntaks

Før du opretter dine egne formler, skal du se nærmere på DAX-formel syntaksen. Syntaks omfatter de forskellige elementer, der udgør en formel, eller mere blot, hvordan formlen skrives. Lad os se på en simpel DAX-formel, der bruges til at oprette nye data (værdier) for hver række i en beregnet kolonne, der hedder margen, i en FactSales-tabel: (formel tekstfarver er kun til illustrerende formål)

Formel for beregnet kolonne

Syntaksen for denne formel omfatter følgende elementer:

  1. Operatoren lighedstegn (=) angiver starten af formlen, og når denne formel beregnes, returneres et resultat eller en værdi. Alle formler, der beregner en værdi, begynder med et lighedstegn.

  2. Kolonnen, der refereres til [salgsbeløb], indeholder de værdier, der skal trækkes fra. En kolonnereference i en formel er altid omgivet af kantede parenteser []. I modsætning til Excel-formler, der refererer til en celle, refererer en DAX-formel altid til en kolonne.

  3. Den matematiske operator for subtraktion (-).

  4. Kolonnen, der refereres til [TotalCost], indeholder de værdier, der skal trækkes fra værdierne i kolonnen [salgsbeløb].

Når du forsøger at forstå, hvordan du kan læse en DAX-formel, er det ofte nyttigt at opdele alle elementerne på et sprog, du synes, og tale hver dag. Du kan for eksempel læse denne formel som:

I tabellen FactSales skal du for hver række i den beregnede margen kolonne beregne (=) en værdi ved at subtrahere (-) værdier i kolonnen [TotalCost] fra værdierne i kolonnen [salgsbeløb].

Lad os se nærmere på en anden type formel, en, der bruges i en måling:

Formel for beregnet kolonne

Denne formel indeholder følgende syntaks elementer:

  1. Målerens navn summen af salgsbeløbet. Formler til målinger kan indeholde Målingsnavnet efterfulgt af et kolon efterfulgt af beregningsformlen.

  2. Operatoren lighedstegn (=) angiver starten af beregningsformlen. Når den beregnes, returneres der et resultat.

  3. Funktionen SUM adderer alle tallene i kolonnen [salgsbeløb]. Du kan få mere at vide om funktioner senere.

  4. Parentes () Omslut et eller flere argumenter. Alle funktioner kræver mindst ét argument. Et argument overfører en værdi til en funktion.

  5. Det tabel FactSales, der refereres til.

  6. Den refererede kolonne [salgsbeløb] i tabellen FactSales. Med dette argument kender funktionen SUM, hvilken kolonne der skal sammenlægge en SUM.

Du kan læse denne formel som:

For målingen af den samlede salgsmængde skal du beregne (=) summen af værdierne i kolonnen [ salgsbeløb ] i tabellen FactSales .

Når denne måling placeres i rulle zonen værdier i en Pivottabelfeltliste, beregnes og returneres de værdier, der er defineret for hver celle i pivottabellen, for eksempel mobiltelefoner i USA.

Bemærk! der er et par ting, der er anderledes i denne formel, sammenlignet med den formel, vi brugte til den beregnede margen kolonne. Vi introducerede især en funktion, SUM. Funktioner er forudskrevne formler, der gør det nemmere at udføre komplekse beregninger og manipulationer med tal, datoer, klokkeslæt, tekst og meget mere. Du kan få mere at vide om funktioner senere.

I modsætning til den beregnede margen kolonne tidligere, får du vist kolonnen [salgsbeløb] før tabellen FactSales, hvor kolonnen tilhører. Dette kaldes et fuldt kvalificeret kolonnenavn, da det omfatter kolonnenavnet, der står foran tabelnavnet. Kolonner, der refereres til i den samme tabel, kræver ikke, at tabelnavnet medtages i formlen. Dette kan gøre lange formler, der henviser til mange kolonner, er kortere og nemmere at læse. Det er dog en god idé altid at medtage tabelnavnet i dine mål-formler, også selvom det er i den samme tabel.

Bemærk!: Hvis navnet på en tabel indeholder mellemrum, reserverede nøgleord eller ikke-tilladte tegn, skal du sætte tabelnavnet i enkelte anførselstegn. Du skal også omslutte tabelnavne i anførselstegn, hvis navnet indeholder tegn uden for det alfanumeriske ANSI-tegn område, uanset om landestandarden understøtter tegnsættet eller ej.

Det er meget vigtigt, at formlerne har den rigtige syntaks. I de fleste tilfælde returneres der en syntaksfejl, hvis syntaksen ikke er korrekt. I andre tilfælde kan syntaksen være korrekt, men de værdier, der returneres, er muligvis ikke det, du forventer. Power Pivot (og SQL Server data Tools) inkluderer IntelliSense; en funktion, der bruges til at oprette syntaktisk korrekte formler ved at hjælpe dig med at vælge de rigtige elementer.

Lad os oprette en simpel formel. Denne opgave vil hjælpe dig med at forstå formel syntaksen, og hvordan funktionen IntelliSense i formellinjen kan hjælpe dig.

Opgave: oprette en simpel formel for en beregnet kolonne

  1. Hvis du ikke allerede er i Power Pivot vinduet i Excel, skal du klikke på Power Pivotvinduepå båndet Power Pivot .

  2. I vinduet Power Pivot skal du klikke på tabellen FactSales (tab).

  3. Rul til kolonnen yderst til højre, og klik derefter på Tilføj kolonnei kolonneoverskriften.

  4. Klik på formellinjen langs toppen af vinduet modeldesigner.

    PowerPivot-formellinje

    Markøren vises nu på formellinjen. På formellinjen kan du skrive en formel for en beregnet kolonne eller et beregnet felt.

    Lad os nu se på de tre knapper til venstre for formellinjen.

    Formellinje

    Når markøren er aktiv i formellinjen, bliver disse tre knapper aktive. Knappen længst til venstre, X, er blot en Cancel-knap. Fortsæt, og klik på den. Markøren vises ikke længere på formellinjen, og knappen Annuller og indstillingen flueben vises ikke længere. Fortsæt, og klik på formellinjen igen. Knappen Annuller og knappen markering vises nu igen. Det betyder, at du er klar til at begynde at skrive en formel.

    Knappen flueben er knappen Kontrollér formel. Det gør ikke noget, før du har indtastet en formel. Vi vender tilbage til den lidt lidt.

    Klik på fx -knappen. Du kan se, at der vises en ny dialogboks. dialogboksen Indsæt funktion. Dialogboksen Indsæt funktion er den nemmeste måde at komme i gang med at skrive en DAX-formel. Vi tilføjer en funktion i en formel, når vi opretter en måling lidt senere, men for nu behøver du ikke at tilføje en funktion i formlen for den beregnede kolonne. Gå videre, og Luk dialogboksen Indsæt funktion.

  5. Skriv et lighedstegn = i formellinjen, og skriv derefter en kantet venstreparentes [. Du får vist et lille vindue med alle kolonnerne i tabellen FactSales. Dette er IntelliSense in Action.

    Da beregnede kolonner altid er oprettet i den aktive tabel, du er i, er det ikke nødvendigt at foranstille kolonnenavnet med tabelnavnet. Gå videre, og rul ned, og dobbeltklik derefter på [SalesQuantity]. Du kan også rulle ned til det kolonnenavn, du vil bruge, og derefter trykke på tab.

    Markøren er nu aktiv til højre for [SalesQuantity].

  6. Skriv et mellemrum, og skriv derefter en subtraktions operator (et minustegn), og skriv derefter et andet mellemrum.

  7. Skriv nu et andet venstreparentes [. Denne gang skal du markere kolonnen [ReturnQuantity] og derefter trykke på ENTER.

    Hvis du får en fejl, skal du se nærmere på din syntaks. Hvis det er nødvendigt, kan du sammenligne den med formlen i den beregnede margen-kolonne, der er beskrevet tidligere.

    Når du trykker på ENTER for at færdiggøre formlen, vises det i Word, som beregnes på statuslinjen nederst i Power Pivot vinduet. Det går hurtigt, også selvom du lige har beregnet nye værdier for mere end 3.000.000 rækker.

  8. Højreklik på kolonneoverskriften, og Omdøb kolonnen NetSales.

Det var det! Du har lige oprettet en enkel, men meget effektiv DAX-formel. For hver række i tabellen FactSales beregner NetSales-formlen en værdi ved at trække værdien i kolonnen [ReturnQuantity] fra værdien i kolonnen [SalesQuantity]. Bemærk, hvordan vi lige har sagt "for hver række". Dette er et blik på et andet meget vigtigt begreb i DAX. rækkekontekst. Du kan få mere at vide om rækkekontekst senere.

Noget er vigtigt at forstå, når du skriver en operator i en DAX-formel, er datatypen i de argumenter, du bruger. Hvis du for eksempel har skrevet følgende formel, = 1 & 2, vil den returnerede værdi være en tekstværdi på "12". Dette skyldes, at &-operatoren (&) er til tekst sammenkædning. DAX fortolker denne formel til at læse: Beregn et resultat ved at tage værdien 1 som tekst og tilføje værdi 2 som tekst. Hvis du nu skulle skrive = 1 + 2, læser DAX denne formel som: beregne et resultat ved at tage den numeriske værdi 1 og tilføje den numeriske værdi 2. Resultatet er naturligvis "3", en numerisk værdi. DAX beregner de resulterende værdier afhængigt af operatoren i formlen, ikke baseret på datatypen af kolonner, der bruges i argumentet. Data typer i DAX er meget vigtige, men uden for omfanget af denne hurtig start. Hvis du vil have mere at vide om datatyper og operatorer i DAX-formler, skal du se DAX-referencen (http://go.microsoft.com/fwlink/?LinkId=239769&clcid = 0x409) i Books Online.

Lad os prøve et andet. Denne gang skal du oprette en måling ved at skrive formlen og ved hjælp af IntelliSense. Du behøver ikke at bekymre dig for meget, hvis du ikke kender formlen fuldt ud. Det vigtigste er her for at lære at oprette en formel ved hjælp af flere elementer sammen i korrekt syntaks.

Opgave: oprette en målings formel

  1. I tabellen FactSales skal du klikke på en tom celle i beregningsområdet. Dette er området af tomme celler lige under en tabel i Power Pivot vinduet.

PowerPivot-beregningsområde

  1. I formellinjen skal du skrive navnet tidligere kvartals salg:.

  2. Skriv et lighedstegn = for at begynde beregningsformlen.

  3. Skriv de første par bogstaver CAL, og dobbeltklik derefter på den funktion, du vil bruge. I denne formel skal du bruge funktionen Beregn .

  4. Skriv en venstreparentes (for at begynde de argumenter, der skal overføres til funktionen BEREGN.

    Bemærk efter at du har skrevet startparentesen, viser IntelliSense dig de argumenter, der kræves til funktionen BEREGN. Du kan få mere at vide om argumenterne i en lille smule.

  5. Skriv de første par bogstaver i tabellen FactSales , og dobbeltklik derefter på FactSales[salg]på rullelisten.

  6. Skriv et komma (,) for at angive det første filter, skriv derefter, og dobbeltklik derefter på funktionen PREVIOUSQUARTER .

    Når du har valgt funktionen PREVIOUSQUARTER, vises en anden startparentes, der angiver, at der kræves et andet argument. dette tidspunkt for funktionen PREVIOUSQUARTER.

  7. Skriv de første par bogstaver Nedton, og dobbeltklik derefter på DimDate[DateKey].

  8. Luk både det argument, der overføres til funktionen PREVIOUSQUARTER og funktionen BEREGN ved at skrive to afsluttende parenteser).

    Formlen bør nu se sådan ud:

    Forrige kvartal salg: = BEREGN (FactSales [salg], PREVIOUSQUARTER (DimDate [DateKey]))

  9. Klik på knappen Kontrollér formel på formellinjen for at bekræfte formlen. Hvis du får en fejl, skal du bekræfte hvert element i syntaksen.

Det lykkedes! Du har lige oprettet et mål ved hjælp af DAX, og det er ikke et enkelt for det. Hvad denne formel bruges til at beregne det samlede salg for det forrige kvartal, afhængigt af de filtre, der anvendes i en pivottabel eller et pivotdiagram.

Du har lige introduceret flere vigtige aspekter af DAX-formler. Først indeholdt denne formel to funktioner. Bemærk funktionen PREVIOUSQUARTER er indlejret som et argument, der overføres til funktionen Beregn . DAX-formler kan indeholde op til 64 indlejrede funktioner. Det er usandsynligt, at en formel skulle have så mange indlejrede funktioner. Det vil faktisk være svært at oprette og foretage fejlfinding, og det er sandsynligvis meget hurtigt.

I denne formel bruges der også filtre. Filtre indsnævrer det, der beregnes. I dette tilfælde valgte du et filter som et argument, som reelt er en anden funktion. Du kan få mere at vide om filtre senere.

Til sidst brugte du funktionen BEREGN. Dette er en af de mest effektive funktioner i DAX. Når du redigerer datamodeller og opretter mere komplekse formler, vil du sandsynligvis bruge denne funktion mange gange. Diskussion af funktionen BEREGN er uden for omfanget af denne Hurtigstarter, men når din viden om DAX vokser, skal du lægge særlig vægt på den.

Bemærk!: Hvis du typisk vil bruge Time Intelligence-funktioner i DAX-formler, skal du angive en entydig datokolonne ved hjælp af dialogboksen Markér som dato. I contoso-formel eksempler. xlsx-projektmappe er kolonnen DateKey i tabellen DimDate valgt som kolonnen entydig dato.

Ekstra kredit

Du spørger muligvis: "Hvad er den simpleste DAX-formel, jeg kan oprette?" Svaret på dette er også den formel, du ikke har til. Og det er præcist, hvad du kan gøre ved at bruge en standard sammenlægningsfunktion i et mål. Næsten alle datamodeller skal filtrere og beregne for samlede data. For eksempel bruges funktionen SUM i det samlede beløb for salgsbeløb, du har set tidligere, til at addere alle tallene i en bestemt kolonne. DAX indeholder flere andre funktioner, der også aggregerer værdier. Du kan automatisk oprette formler ved hjælp af standard sammenlægninger ved hjælp af funktionen AutoSum.

Ekstra kredit opgave: oprette en målings formel ved hjælp af funktionen AutoSum

  1. Rul til kolonnen ReturnQuantity i tabellen FactSales, og klik derefter på kolonneoverskriften for at markere hele kolonnen.

  2. Klik på knappen Autosum på båndet i gruppen beregninger under fanen Startside .

AutoSum i PowerPivot

Klik på pil ned ud for Autosum, og klik derefter på gennemsnit (Bemærk de andre standard Sammenlægnings funktioner, du også kan bruge).

Med det samme oprettes der en ny måling med navnet gennemsnit af ReturnQuantity: efterfulgt af formlen = middel ([ReturnQuantity]).

Var det nu ikke nemt? Det er selvfølgelig ikke alle formler, du opretter, der bliver enkle. Men ved hjælp af funktionen AutoSum kan du oprette hurtige og nemme formler ved hjælp af standard Sammenlægnings beregninger.

Dette burde give dig en rimelig god forståelse for syntaks, der bruges i DAX-formler. Du blev også introduceret til nogle smarte smarte funktioner som IntelliSense og AutoSum for at hjælpe dig med at oprette hurtige, nemme og nøjagtige formler. Der er meget mere, du kan få mere at vide om syntaksen. Et godt sted at få mere at vide er DAX-referencen eller SQL Books Online.

Syntaks hurtig quiz i

  1. Hvad gør denne knap på formellinjen?
    Funktionsknap

  2. Hvad er altid et kolonnenavn i en DAX-formel?

  3. Hvordan skriver du en formel for følgende:
    i tabellen DimProduct for hver række i den UnitMargin beregnede kolonne skal du beregne en værdi ved at subtrahere værdierne i kolonnen UnitCost fra værdier i UnitPrice kolonnenPrisPrEnhed?

Svar gives i slutningen af dette emne.

Funktioner

Funktioner er foruddefinerede formler, der udfører beregninger ved hjælp af specifikke værdier, også kaldet argumenter, i en bestemt rækkefølge eller struktur. Argumenter kan være andre funktioner, en anden formel, kolonnereferencer, tal, tekst, logiske værdier som f. eks. sand eller falsk eller konstanter.

DAX indeholder følgende kategorier af funktioner: dato og klokkeslæt, oplysninger, logisk, matematisk, statistisk, tekst og Time Intelligence-funktioner. Hvis du er vant til at bruge funktioner i Excel-formler, vises mange funktioner i DAX på samme måde som dig. DAX-funktioner er dog entydige på følgende måder:

  • En DAX-funktion refererer altid til en hel kolonne eller en tabel. Hvis du kun vil bruge bestemte værdier fra en tabel eller kolonne, kan du føje filtre til formlen.

  • Hvis du har brug for at tilpasse beregninger på en række for række-basis, indeholder DAX funktioner, der gør det muligt at bruge den aktuelle rækkeværdi eller en relateret værdi som en slags argument, til at udføre beregninger, der varierer efter kontekst. Du kan få mere at vide om kontekst senere.

  • DAX indeholder mange funktioner, der returnerer en tabel i stedet for en værdi. Tabellen vises ikke, men bruges til at give input til andre funktioner. For eksempel kan du hente en tabel og derefter tælle de entydige værdier i den eller beregne dynamiske summer på tværs af filtrerede tabeller eller kolonner.

  • DAX indeholder en lang række Time Intelligence-funktioner. Disse funktioner gør det muligt at definere eller vælge datointervaller og udføre dynamiske beregninger baseret på dem. Du kan for eksempel sammenligne summer på tværs af parallelle perioder.

Nogle gange er det svært at vide, hvilke funktioner du kan bruge i en formel. Power Pivotog tabel modeldesigneren i SQL Server-data værktøjer omfatter funktionen Indsæt, en dialogboks, der hjælper dig med at vælge funktioner efter kategori og indeholder korte beskrivelser til hver funktion.

Indsæt funktion

Lad os oprette en ny formel, der indeholder en funktion, du vælger, ved hjælp af funktionen Indsæt funktion:

Opgave: Føj en funktion til en formel ved hjælp af funktionen Indsæt

  1. Rul til kolonnen længst til højre i tabellen FactSales, og klik derefter på Tilføj kolonnei kolonneoverskriften.

  2. I formellinjen skal du skrive et lighedstegn, =.

  3. Klik på knappen Indsæt funktion . Indsæt funktion dette åbner dialogboksen Indsæt funktion .

  4. I dialogboksen Indsæt funktion skal du klikke på feltet Vælg en kategori liste. Som standard er alle markeret, og alle funktionerne i kategorien alle er angivet nedenfor. Det er mange funktioner, så du vil filtrere funktionerne for at gøre det nemmere at finde den type funktion, du leder efter.

  5. For denne formel vil du returnere nogle data, der allerede findes i en anden tabel. For det, skal du bruge en funktion i filter kategorien. Gå videre, og klik på filter kategorien, Rul ned, og dobbeltklik på den relaterede funktion i Vælg en funktion. Klik på OK for at lukke dialogboksen Indsæt funktion .

  6. Brug IntelliSense til at finde og vælge kolonnen DimChannel [ChannelName].

  7. Luk formlen, og tryk derefter på ENTER.

  8. Når du trykker på ENTER for at færdiggøre formlen, vises det i Word, som beregnes på statuslinjen nederst i Power Pivot vinduet. Nu kan du se, at du lige har oprettet en ny kolonne i tabellen FactSales med kanaloplysninger fra tabellen DimChannel.

  9. Omdøb kolonne kanalen.

    Formlen skal se således ud: = relateret (DimChannel [ChannelName])

Du blev lige introduceret til en anden meget vigtig funktion i DAX, den relaterede funktion. Den relaterede funktion returnerer værdier fra en anden tabel. Du kan bruge relateret, forudsat at der er en relation mellem den tabel, du er i, og den tabel, der indeholder de værdier, du vil hente. Den relaterede funktion har selvfølgelig mange muligheder. I dette tilfælde kan du nu inkludere salgskanalen for hvert salg i tabellen FactSales. Du kan nu skjule tabellen DimChannel fra pivottabelfeltlisten, hvilket gør det nemmere at navigere og kun få vist de vigtigste oplysninger, du virkelig har brug for. På samme måde som med BEREGNINGsfunktionen beskrevet tidligere, er den relaterede funktion meget vigtig, og du vil sandsynligvis bruge den mange gange.

Som du kan se, kan funktionerne i DAX hjælpe dig med at oprette meget effektive formler. Vi berøres kun i de grundlæggende funktioner. Når dine DAX-kvalifikationer forbedres, skal du oprette formler ved hjælp af mange forskellige funktioner. Et af de bedste steder, hvor du kan få mere at vide om alle DAX-funktionerne er i referencen til data Analysis Expressions (DAX).

Funktioner hurtig quiz i

  1. Hvad refererer en funktion altid til?

  2. Kan en formel indeholde mere end én funktion?

  3. Hvilken kategori af funktioner skal du bruge til at sammenkæde to tekststrenge i én streng?

Svar gives i slutningen af dette emne.

Kontekst

Kontekst er en af de vigtigste DAX-begreber til at forstå. Der findes to typer kontekst i DAX. rækkekontekst og filterkontekst. Vi vil først se på rækkekontekst.

Rækkekontekst

Rækkekontekst er det mest nemt at opfatte som den aktuelle række. F. eks. skal du huske den beregnede margen kolonne, du så tidligere, når du har lært om syntaksen? Formlen = [salgsbeløb]-[TotalCost] beregner en værdi i kolonnen margin for hver række i tabellen. Værdierne for hver række beregnes ud fra værdier i to andre kolonner, [salgsbeløb] og [TotalCost] i samme række. DAX kan beregne værdierne for hver række i kolonnen margin, fordi den har konteksten: for hver række tager det værdier i kolonnen [TotalCost] og trækker dem fra værdierne i kolonnen [salgsbeløb].

I den markerede celle vist nedenfor blev værdien, $49,54 i den aktuelle række blevet beregnet ved at subtrahere værdien $51,54 i kolonnen [TotalCost] fra værdien $101,08 i kolonnen [salgsbeløb].

Rækkekontekst i PowerPivot

Række konteksten gælder ikke kun for beregnede kolonner. Rækkekontekst gælder også, hver gang en formel har en funktion, der anvender filtre til at identificere en enkelt række i en tabel. Funktionen anvender en rækkekontekst for hver række i tabellen, som den filtreres efter. Denne type rækkekontekst, der oftest gælder for målinger.

Filter kontekst

Filter kontekst er lidt sværere at forstå end rækkekontekst. Du kan nemt opfatte filter konteksten som: et eller flere filtre, der anvendes i en beregning, der bestemmer et resultat eller en værdi.

Filter konteksten findes ikke i stedet for rækkekontekst. det gælder snarere end for rækkekontekst. Hvis du for eksempel vil indsnævre de værdier, der skal medtages i en beregning, kan du anvende en filterkontekst, som ikke kun angiver række konteksten, men også kun angiver en bestemt værdi (filter) i den pågældende rækkekontekst.

Filter kontekst er nemt at se i pivottabeller. Når du for eksempel føjer TotalCost til området værdier og derefter føjer år og område til rækken eller kolonnerne, er du ved at definere en filterkontekst, der vælger en delmængde af data baseret på et givet år og område.

Hvorfor er filter konteksten så vigtig for DAX? Da filter konteksten nemt kan anvendes ved at tilføje kolonne-og rækkenavne og udsnit i en pivottabel, kan filterkontekst også anvendes i en DAX-formel ved at definere et filter ved hjælp af funktioner som alle, relateret, FILTER, BEREGN, efter relationer og af andre mål og kolonner. Lad os se på følgende formel i et mål, der kaldes StoreSales:

Formel

Klart er denne formel mere kompleks end nogle af de andre formler, du har set. Men for bedre at forstå denne formel kan vi bryde den op, som vi har gjort med andre formler.

Denne formel indeholder følgende syntaks elementer:

  1. Målingsnavnet StoreSales efterfulgt af et kolon:.

  2. Operatoren lighedstegn (=) angiver starten af formlen.

  3. Funktionen BEREGN evaluerer et udtryk som et argument i en kontekst, der er ændret af de angivne filtre.

  4. Parentes () Omslut et eller flere argumenter.

  5. Et mål [salg] i samme tabel som et udtryk. Salgs målingen har formlen: = SUM (FactSales [salgsbeløb]).

  6. Et komma (,) adskiller hvert filter.

  7. Den kolonne, der refereres til, og en bestemt værdi, DimChannel [ChannelName] = "store", som et filter.

Denne formel sikrer kun salgsværdier, der er defineret af salgsmåleenheden som et filter, beregnes kun for rækker i kolonnen DimChannel [ChannelName] med værdien "store" som et filter.

Som du kan forestille dig, er det muligt at angive filter konteksten i en formel, der er mange og effektive funktioner. Hvis du kun skal kunne henvise til en bestemt værdi i en relateret tabel, er det blot ét eksempel. Du behøver ikke bare bekymre dig, hvis du ikke helt kender kontekst med det samme. Når du opretter dine egne formler, vil du bedre forstå konteksten, og hvorfor det er så vigtigt i DAX.

Kontekst hurtig quiz i

  1. Hvad er de to kontekst typer?

  2. Hvad er filterkontekst?

  3. Hvad er rækkekontekst?

Svar gives i slutningen af dette emne.

Resumé

Nu hvor du har en grundlæggende forståelse af de vigtigste begreber i DAX, kan du begynde at oprette DAX-formler til beregnede kolonner og målinger. Det kan være en lille smule at lære DAX, men der er mange ressourcer, der er tilgængelige for dig. Du kan få mere at vide om andre DAX-begreber og formler, der kan hjælpe dig med at løse dine problemer med din virksomhed, når du har læst et par gange i dette emne. Der er mange DAX-ressourcer, der er tilgængelige i Power Pivot hjælp, SQL Server Books Online, White Papers og blogge fra både Microsoft og førende BI-fagfolk. Http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx (DAX Resource Center wiki) er et glimrende sted at starte. DAX-referencen (Data Analysis Expressions) er også en nyttig ressource. Sørg for at gemme det i dine favoritter.

DAX i BI-tabel model-hvidbogen, der kan hentes (http://go.microsoft.com/fwlink/?LinkID=237472&clcid = 0x409), giver et mere detaljeret overblik over de koncepter, der er indsat her, samt mange andre avancerede begreber og formler. Denne hvidbog anvender også samme contoso DAX-eksempel formler. xlsx-projektmappe, du allerede har.

Hurtig quiz i svar

Syntaks:

  1. Åbner funktionen Indsæt funktion.

  2. Kantede parenteser [].

  3. = [Enhedspris]-[UnitCost]

Handlinger

  1. En tabel og en kolonne.

  2. Ja. En formel kan indeholde op til 64 indlejrede funktioner.

  3. Tekstfunktioner.

Indhold

  1. Rækkekontekst og filterkontekst.

  2. Et eller flere filtre i en beregning, der bestemmer en enkelt værdi.

  3. Den aktuelle række.

Bemærk!:  Denne side er oversat ved hjælp af automatisering og kan indeholde grammatiske fejl og unøjagtigheder. Det er vores hensigt, at dette indhold skal være nyttigt for dig. Var disse oplysninger nyttige? Her er artiklen på engelsk, så du kan sammenligne.

Har du brug for mere hjælp?

Udvid dine Office-færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×