DAX Studio EVALUATE Nøkkelord: Grunnleggende eksempler
Lær å bruke DAX Studio EVALUATE nøkkelordet med grunnleggende eksempler og få en bedre forståelse av hvordan dette kan hjelpe deg med databehandling.
I denne opplæringen lærer du om nestede uttrykk, objekter og miljøer i . Nestede uttrykk og variabler vil bli brukt til å diskutere hvordan miljøer fungerer og bidra til å generere data. Du vil også lære å håndtere vanlige scenarier når du transformerer nestede objekter.
Innholdsfortegnelse
Opprette nestede uttrykk
Uttrykk er definert som en formel som brukes til å konstruere verdi.

Uttrykket i formellinjen er bygget opp fra underuttrykk. Bokstavene 1 og 2 er underuttrykk av det overordnede uttrykket.
Variabler er definert som navngitte verdier. Dette er en prøvepost.
Hvis du åpner Advanced Editor-vinduet, kan du se variablene som brukes i spørringen.
Variablene a , b og c representerer hver en verdi som er resultatet av et uttrykk du ofte finner etter et likhetstegn. Alle variabler i det overordnede uttrykket, som er selve posten, danner miljøet for den posten. Innenfor dette miljøet må hver variabel være unik.
Så hvis du legger til en annen variabel kalt c , vil du se en feilmelding under Advanced Editor-vinduet.
Posten kan få tilgang til alle underuttrykkene ved hjelp av identifikatorer eller variabelnavn. For nestede uttrykk i posten er imidlertid hvert miljø forskjellig fordi de har tilgang til alle andre variabler i posten bortsett fra seg selv.
I dette eksemplet kan du se at variabel c refererer til seg selv.
Hvis du trykker ferdig, får du en feilmelding.
Hvis du trekker ut verdien av c ved å legge til elementtilgangsoperatøren, får du et resultat. Du kan også oppnå det samme resultatet med let- uttrykket fordi de samme reglene brukes på det.
Forstå nestede uttrykk i et miljø
Dette er nok et eksempel på en rekordverdi.
Hvis du åpner Advanced Editor-vinduet, kan du se at variablene a og b deler det samme miljøet som er det ytterste miljøet. Du vil også se at variablene x , y og z , er underuttrykk av det overordnede uttrykket a .
Hver variabel har tilgang til alle de andre variablene i den nestede posten bortsett fra seg selv. Du kan kalle en variabel som eksisterer i et annet miljø. I dette eksemplet kan du se at z refererer til b som er i det ytre miljøet.
Variablene x , y og z kan få tilgang til b fordi b er en del av deres overordnede uttrykksmiljø. Du kan også ha samme variabel, men i forskjellige miljøer.
I dette andre eksemplet kan du se at den indre og ytre posten har en variabel x .
Variabler må være unike i sitt eget miljø. Den nærmeste x tilordnet en variabel vil bli brukt. I denne eksempelspørringen brukes den indre x-en siden den er nærmere fra perspektivet til post a .
I denne andre spørringen brukes den nærmeste x som er nær variabel b i uttrykket.
Den ytre variabelen b kan referere til variabelen x inne i post a ved å bruke elementtilgangsoperatøren. Du må referere til variabelen a og deretter få tilgang til x ved å bruke et sett med firkantede parenteser. På samme måte kan post a referere til variabelen x inne i variabel b .
Når miljøet til den nestede posten a slås sammen med variabler fra det overordnede uttrykket, fører det til en konflikt fordi x eksisterer to ganger og alle variabler må være unike i miljøet. Siden en variabel ikke kan referere til seg selv, løses konflikten ved å referere til den ytre x.
Løse vanlige scenarier
Et vanlig scenario er transformering av nestede objekter. For å demonstrere vil denne tabellen bli brukt.
Hvis du ønsker å hente en verdi fra den ytre tabellen og plassere den i den nestede tabellen, er det to måter å oppnå det på. Den første metoden er å bruke alternativet Legg til egendefinert kolonne .
Klikk på tabellikonet øverst til venstre i forhåndsvisningsruten og velg Legg til egendefinert kolonne.
Skriv inn Temp som kolonnenavn og skriv inn en plassholder i egendefinert. Når du er ferdig, trykk OK.
Inne i formellinjen erstatter du hvert uttrykk med en egendefinert funksjon ved å legge til en kolonne i den nestede tabellen. Start logikken for en tilpasset funksjon og kall den OT for ytre tabell. Deretter legger du til gå-til-skiltet.
Deretter bruker du Table.AddColumn -funksjonen for å legge til en kolonne. Se tabellen i den ytre tabellen i Navn-kolonnen. Og skriv deretter inn et nytt kolonnenavn.
For dette eksemplet er kolonnenavnet som er brukt Inntekt . Skriv inn hver funksjon for å få verdiene for hver rad i Hent inntekt-kolonnen.
Hvis du klikker på plassen inne i cellen i en rad i Temp-kolonnen, får du en forhåndsvisning av den nestede tabellen under forhåndsvisningsruten. Du vil se at hver rad har verdien av den ytre tabellen.
Bruke variabler for å lagre verdier
Den andre metoden for å transformere nestede objekter er ved å bruke variabler til å lagre verdier. Først legger du til en egendefinert kolonne og skriv inn Temp2 som kolonnenavn. For formelen bruker du let- uttrykket for å lagre verdier i variabler.
Skriv inn let og skriv deretter et variabelnavn. For dette eksemplet er variabelnavnet myR . Deretter sidestiller du variabelen med Hent inntekt-kolonnen. Etter det, skriv inn i -leddet og bruk Table.AddColumn -funksjonen for å legge til en kolonne i den nestede tabellen.
For den første parameteren til funksjonen, skriv inn Navn-kolonnen som inneholder de nestede tabellene. Deretter navngir du den nye kolonnen Inntekter. Bruk hver for å kalle variablene for hver rad.
Hvis du klikker på plassen inne i cellen i en rad i Temp2-kolonnen, vil du se at den hentet verdiene fra den ytre tabellen.
Et annet vanlig scenario er et oppslag der det ikke er noen delt nøkkel. For dette scenariet vil 2 eksempeltabeller bli brukt: en kategoritabell og en produkttabell .
Bruk kategoritabellen som en iscenesettelsesspørring for å komplimentere attributtene til produktdimensjonstabellen. Siden det ikke er noen delt nøkkel, kan en sammenslåing ikke utføres. Det første du må gjøre er å legge inn hele kategoritabellen i produkttabellspørringen ved å bruke Add Custom Column.
Legg til en egendefinert kolonne og skriv Kategori som kolonnenavn. Deretter kaller du kategorispørringen i den egendefinerte formelen.
Etter det har du nå nestet hele kategoritabellen i hver rad i produkttabellen.
Når du klikker på plassen inne i cellen i en rad i Kategori-kolonnen, kan du se hele kategoritabellen i hver rad.
Henter en enkelt verdi
Hvis du kun ønsker å hente en enkelt verdi, må du filtrere kategoritabellen ned til en enkelt rad hvor en del av strengen fra produktet har samsvar med produktgruppen i kategoritabellen.
Åpne dialogboksen Egendefinert kolonne ved å trykke på tannhjulknappen ved siden av Lagt egendefinert i ruten Applied Steps.
I formelen legger du til Table.SelectRows -funksjonen. For den første parameteren brukes Kategoritabellen. Den andre parameteren brukte Text.Contains -funksjonen som en betingelse. For den indre tabellen sjekker denne funksjonen om en tekst inneholder en del fra produktstrengen i den ytre tabellen.
Når du får tilgang til det ytre bordet, vil du legge merke til detlegger til hvert nøkkelord i formellinjen. Det er en unær funksjon som tar understreken ( _ ) som en navnløs variabel. Men siden du bare har tilgang til en kolonne, kan den utelates.
Hvis du klikker på plassen inne i cellen i en rad i Kategori-kolonnen, vil du nå se en enkelt rad i hver av de nestede tabellene.
Derfra kan du trekke ut en verdi for kategorien med kombinasjonen av rad- og felttilgangsoperatørene.
Gå tilbake til dialogboksen Egendefinert kolonne og legg til operatorene i formelen. For å få den første raden i tabellen, skriv inn 0 i et sett med krøllede parenteser. List deretter feltnavnet Kategori innenfor et sett med firkantede parenteser.
For å fremtidssikre løsningen kan du legge til et spørsmålstegn ( ? ) til slutt for å endre atferden som ikke ble funnet fra å returnere en feil til en null.
Konklusjon
Miljøer og nestede uttrykk hjelper spørringen å få frem visse verdier fra kodene dine for å gi ønskelige resultater. Å være klar over dem er viktig når du skriver, fordi når du forstår dem, vil du kunne løse mer avanserte og komplekse scenarier.
Melissa
Lær å bruke DAX Studio EVALUATE nøkkelordet med grunnleggende eksempler og få en bedre forståelse av hvordan dette kan hjelpe deg med databehandling.
Finn ut hvorfor det er viktig å ha en dedikert datotabell i LuckyTemplates, og lær den raskeste og mest effektive måten å gjøre det på.
Denne korte opplæringen fremhever LuckyTemplates mobilrapporteringsfunksjon. Jeg skal vise deg hvordan du kan utvikle rapporter effektivt for mobil.
I denne LuckyTemplates-utstillingen vil vi gå gjennom rapporter som viser profesjonell tjenesteanalyse fra et firma som har flere kontrakter og kundeengasjementer.
Oppdag noen vanlige SQL-funksjoner som vi kan bruke som streng, dato og noen avanserte funksjoner for å behandle eller manipulere data.
Gå gjennom de viktigste oppdateringene for Power Apps og Power Automate og deres fordeler og implikasjoner for Microsoft Power Platform.
I denne bloggen vil vi demonstrere hvordan du legger feltparametere sammen med små multipler for å skape utrolig nyttig innsikt og grafikk.
I denne opplæringen lærer du hvordan du lager din perfekte LuckyTemplates-mal som er konfigurert til dine behov og preferanser.
I denne bloggen vil du lære hvordan du bruker LuckyTemplates rangering og tilpassede grupperingsfunksjoner for å segmentere et eksempeldata og rangere det i henhold til kriterier.
Lær hvordan du oppretter og tilpasser punktdiagrammer i LuckyTemplates, som hovedsakelig brukes til å måle ytelse mot mål eller tidligere år.