Arbeide med DAX-spørringsvisning
Med DAX-spørringsvisning i Power BI kan du vise og arbeide med DAX-spørringer (Data Analysis Expressions) i semantiske modeller.
DAX-spørringer
I Power BI brukes DAX-formler til å definere ulike typer beregninger for dataene, men kan også brukes til å definere rollesikkerhet. DAX-spørringer kan derimot brukes til å returnere data fra modellen.
DAX-spørringer ligner på SQL-spørringer ved at de kan vise deg data du allerede har. DAX-spørringer oppretter ikke elementer i modellen eller visualobjektene i rapporten.
DAX-spørringer har to hoveddeler:
- En EVALUATE-setning , som kreves. Den angir hva og hvordan data returneres i spørringen.
- Et DEFINE-uttrykk , som er valgfritt. Den lar deg definere DAX-formler, for eksempel et mål, som skal brukes i spørringen. Mål som er opprettet eller oppdatert ved hjelp av DAX-spørringen DEFINE MEASURE, er MÅL for DAX-spørringsomfang, som bare kjører i konteksten til DAX-spørringen. Mål for DAX-spørringsomfang kan legges til i modellen ved hjelp av CodeLens-oppdateringsmodellhandlinger eller Oppdater modell med endringer-knappen .
Hvis du vil lære mer om hvordan spørringer brukes, kan du se DAX-spørringer i DAX-referansen.
Åpne DAX-spørringsvisning
Velg DAX-spørringsvisningsikonet på venstre side i Power BI Desktop.
Velg Skriv DAX-spørringer fra hurtigmenyen i arbeidsområdet for Power Bi-tjeneste- eller Fabric-portalen.
Velg Skriv DAX-spørringer øverst på siden for semantisk modell på Power Bi-tjeneste- eller Stoffportal-siden.
Oppsett for DAX-spørringsvisning
La oss ta en nærmere titt på DAX-spørringsvisning i Power BI Desktop.
DAX-spørringsvisning har disse elementene:
Bånd
Båndet for DAX-spørringsvisning har vanlige handlinger som brukes når du skriver DAX-spørringer.
La oss ta en nærmere titt på elementer på båndet:
Formater spørring
Velg knappen Formater spørringsbånd, eller bruk SKIFT+ALT+F til å formatere gjeldende spørring. Spørringen er rykket inn med faner. DAX-funksjoner endres til STORE BOKSTAVER, og flere linjer legges til. Formatering av DAX-spørringen regnes som en anbefalt fremgangsmåte og forbedrer lesbarheten for DAX-spørringen. Formateringen rykker også inn på en slik måte at du kan skjule og utvide deler av spørringen.
Kommentar og ukomprimering
Velg knappen Kommentarbånd for å legge til en dobbel omvendt skråstrek (//) i begynnelsen av linjen der markøren er eller alle de merkede linjene. Dette kommenterer linjene, og når DAX-spørringen kjøres, ignoreres disse linjene.
Velg knappen Opphvis båndet som skal fjernes // i begynnelsen av en linje der markøren er, eller alle de merkede linjene. Det fungerer ikke på linjer der kommentarmerknader med flere linjer legges til.
Du kan også bruke CTRL+/ til å veksle mellom kommentar og ukomprimering.
Søk og erstatt
Velg Knappen Søk etter bånd, eller bruk CTRL+F til å søke etter tekst i redigeringsprogrammet for DAX-spørring. Finn inkluderer alternativer for å samsvare mellom store og små bokstaver, samsvare med hele ordet, bruke et vanlig uttrykk og bla gjennom alle treff for gjeldende spørring. Du kan også velge vinkeltegnet til venstre for Søk-boksen for å angi Erstatt.
Velg Erstatt-knappen på båndet, eller bruk CTRL+H til å søke etter og erstatte tekst i redigeringsprogrammet for DAX-spørring. Erstatt inkluderer alternativer for å bevare saken og erstatte ett om gangen eller alt samtidig.
Kommandopalett
Velg kommandopalettbåndknappen, eller bruk CTRL+ALT+P til å åpne kommandopalettboksen. Du kan søke etter flere handlinger i redigeringsprogrammet for DAX-spørringer og se de tilknyttede hurtigtastene.
Kommandolinje
Kommandolinjen for DAX-spørringsvisning inneholder de viktigste handlingene når du bruker DAX-spørringsvisning.
Kjør og avbryt
Kjør-knappen kjører DAX-spørringen eller de valgte linjene i en spørring. Statusen for en spørring etter at den kjøres, vises på den nedre statuslinjen.
Når en spørring kjører, blir knappen en Avbryt-knapp , som kan brukes til å stoppe en spørring som kjører.
Oppdater modell med endringer
Oppdater-modellen med endringer-knappen legger til eller overskriver modellmål med DAX-formlene fra dax-målene for spørringsomfang. Mål for DAX-spørringsomfang er mål i DEFINE MEASURE-blokken . Alternativt kan du velge å legge til eller overskrive modellmål individuelt ved hjelp av CodeLens-teksten som vises over hver av dem.
Redigeringsprogram for DAX-spørring
DAX-spørringsvisning inneholder et redigeringsprogram for spørringer der du kan skrive og redigere spørringer. Det er mer enn bare en større DAX-formellinje. Den er kraftigere og har mange likheter med DAX-redigeringsprogrammet som er tilgjengelig i VS Code.
Redigeringsprogrammet for DAX-spørring har følgende elementer:
Forslag og Intellisense
Skriv inn spørringen, og få hjelp med forslag og Intellisense mens du redigerer.
Bruk ENTER eller TAB til å legge til den uthevede intellisensen, eller SKIFT+ENTER eller ALT+ENTER for å flytte til en annen linje uten å legge til intellisense-alternativet. Hvis du velger ESC, lukkes et av overleggene.
Hold pekeren over for å se målformler
Når et mål er inkludert i DAX-spørringen, kan du holde pekeren over det for å se formelen, navnet og beskrivelsen.
Velg for å se hurtighandlinger for mållyspær
Hvis du velger et mål i en EVALUATE-setning i en spørring uten en DEFINE-setning, vises hurtighandlingslyspæren. Velg Definer eller Definer med referanser for å opprette en DEFINE-setning med denne målformelen med eller uten DAX-formlene for referansemål.
Oppdater modellmål ved hjelp av CodeLens
Bruk av DEFINE MEASURE er nyttig når du oppretter mål ved først å la deg opprette dem som mål for DAX-spørringsomfang. Du kan redigere flere mål i ett vindu og deretter kjøre spørringen for å se resultatene av alle eller bare noen av dem med bestemte grupper etter kolonner. Du trenger ikke å opprette et tabellvisualobjekt i rapportvisning og bytte frem og tilbake mellom målformler. CodeLens tar dette ett skritt videre ved å angi ledetekster når målet allerede finnes i modellen, eller hvis det ikke gjør det, kan det legge det til.
CodeLens er den klikkbare teksten som vises over en DEFINE MEASURE-blokk. For mål for DAX-spørringsomfang som ikke allerede finnes i modellen, vises oppdateringsmodellen: Legg til nye mål CodeLens, som legger til modellmålet når du klikker. Når det gjelder DAX-mål for spørringsomfang som allerede finnes i modellen, og når DAX-mål-DAX-formelen er forskjellig, vises oppdateringsmodellen: Overskriv mål CodeLens, som endrer modellmålet til denne DAX-formelen når den klikkes.
Du kan også legge til eller overskrive flere mål samtidig ved å klikke Oppdater modell med endringer-knappen på kommandolinjen .
Mål oppdateringsarbeidsflyt
Hurtighandlingene for lyspæren og CodeLens kan brukes sammen i en fullstendig arbeidsflyt:
- Velg Hurtigspørringer i hurtigmenyen for et mål, og evaluer for å få spørringen opprettet for deg i en ny spørringsfane.
- Velg målet i spørringen for å definere eller definere med referanser, og legg til DEFINE-setningen.
- Gjør uttrykksoppdateringer til målet, og kjør deretter DAX-spørringen for å vise endringen.
- Når endringen vises som forventet, bruker du CodeLens Update-modellen: Overskriv mål for å lagre den tilbake til modellen.
Her er en mer visuell måte å forstå arbeidsflyten på:
Resultatrutenett
Når en spørring kjøres, vises resultatene i resultatrutenettet .
Hvis det er mer enn én EVALUATE-setning i redigeringsprogrammet for spørring, kan flere resultater returneres. Du kan bruke rullegardinlisten Resultat til å bytte mellom dem. Kopier-knappen kopierer hele rutenettet som en tabell med skilletegn med topptekster. Rutenettet kan endres ved hjelp av pilene øverst til høyre eller manuelt med markøren på kantlinjen mellom resultatrutenettet og redigeringsprogrammet for spørring.
Hvis spørringen resulterer i en feil, viser resultatrutenettet det.
En kopiknapp overfører feilen til utklippstavlen. Begynnelsen av feilen angir hvor feilen er i spørringen. I bildet ovenfor er feilen:
"Spørring (4, 23) Verdien for Salg 2 kan ikke fastslås. Enten finnes ikke kolonnen, eller det finnes ingen gjeldende rad for denne kolonnen."
Spørringen (4, 23) angir at feilen er på linje 4 og tegnet 23.
Spørringsfaner
DAX-spørringsvisning kan ha flere spørringsfaner, som kan gis nytt navn eller fjernes. De viser også gjeldende tilstand for spørringen.
Hver fane inneholder en statusindikator:
- Ingen indikatorer vises før en spørring er kjørt.
- En grønn hake indikerer en vellykket spørringskjøring.
- Et rødt kors indikerer at det oppstod en feil.
- En fylt firkant i en sirkel indikerer at spørringen ble avbrutt.
- En klokke indikerer at spørringen kjører.
Spørringer kan kjøres i bakgrunnen, slik at du kan fortsette å arbeide på andre spørringsfaner.
Lagring av DAX-spørringer
Spørringsfaner for DAX-spørringsvisning lagres i filen når du lagrer fra Power BI Desktop, slik at du kan fortsette der du slapp når du åpner filen på nytt. Hvis du bruker utviklermodus til å lagre et Power BI-prosjekt, inkluderes hver spørringsfane som en DAX-fil i DAXQueries-mappen i den semantiske modellmappen, eller rapportmappen hvis de opprettes i en direkte tilkoblet rapport. Mer informasjon på Dokumentasjon for Power BI-utviklermodus.
Du kan for øyeblikket ikke vise eller redigere DAX-spørringene som tidligere ble lagt til i Power BI Desktop i Power Bi-tjeneste. Brukere av rapporten eller den semantiske modellen ser ikke DAX-spørringene som er lagret med den semantiske modellen.
FANene for DAX-spørringsvisning forkastes ved lukking når du skriver DAX-spørringer fra Power Bi-tjeneste- eller Stoff-portalen.
Datarute
Dataruten viser elementene i modellen for å hjelpe deg med å skrive spørringer. Redigeringsbanene for de fleste av disse elementene blokkeres i spørringsvisningen.
Hurtigspørringer
Hurtigspørringer i dataruten inneholder hurtigspørringer. Bruk hurtigspørringer til å opprette spørringer i en ny spørringsfane for tabeller, kolonner og mål. Hurtigspørringer er utformet for å være en produktivitetsøkning for vanlige oppgaver og bygges, slik at de enkelt kan endres ytterligere. Alle hurtigspørringer opprettes i en ny spørringsfane og kjøres automatisk.
Hvor som helst
Definer alle mål i modellen oppretter en spørring med alle målformlene som vises i en spørring. Søk enkelt i alle målformlene dine.
Definer nye mål oppretter en spørring med en defineringsmåleblokk. Bruk denne til å opprette ditt eget mål i DAX-spørringsvisning, og legg deretter til modellen når du er klar.
Tabeller
Vis de 100 øverste radene oppretter en spørring ved hjelp av SELECTCOLUMNS() for å vise de 100 øverste radene i tabellen. Kolonnene er oppført på hver linje for å tillate enkel endring ved å kommentere ut linjer. En ORDER BY er også inkludert for å angi sorteringsrekkefølgen.
Vis kolonnestatistikk oppretter en spørring som viser statistisk informasjon for hver kolonne i tabellen. Se mange av formlene for hvordan du aggregerer kolonner som MIN, MAX, GJENNOMSNITT, ANTALL og mer.
Definer alle mål i denne tabellen oppretter en spørring med denne tabellens målformler vist i en spørring.
Kolonner
Vis forhåndsvisning av data oppretter en spørring ved hjelp av DISTINCT() for å se verdiene i en kolonne.
Vis kolonnestatistikk oppretter en spørring som viser statistisk informasjon for denne bestemte kolonnen. Se mange formler for hvordan du aggregerer kolonnen som MIN, MAX, GJENNOMSNITT, ANTALL og mer. Spørringen som returneres varierer avhengig av datatypen for kolonnen, og viser ulike statistikker for numeriske kolonner, tekst og datokolonner.
Measures
Evaluer oppretter en spørring for å vise resultatet av målet. SUMMARIZECOLUMNS() brukes slik at du kan legge til i en gruppe etter kolonner for å vise målet etter bestemte grupper, for eksempel land, produkt osv.
Definer og evaluer oppretter en spørring for å vise resultatet av målet og vise målets formel i en DEFINE-setning som deretter kan endres.
Definer med referanser og evaluer oppretter en spørring for å vise resultatet av målet og viser ikke bare målets formel i en DEFINE-setning som kan endres, men også eventuelle andre mål som det refereres til i målformelen. Rediger en hvilken som helst del i hele konteksten til målet.
Henter visuelle DAX-spørringer fra Ytelsesanalyse
Visualobjekter i rapportvisning henter data fra modellen ved å opprette en DAX-spørring. Visualobjektspørringen kan vises i DAX-spørringsvisning ved hjelp av Ytelsesanalyse. Ytelsesanalyse kan gi deg innsikt i hvorfor et visualobjekt kan vise en uventet verdi, eller ganske enkelt som en måte å raskt starte en spørring på, kan du endre ytterligere.
Gå til Optimaliser-båndet i rapportvisning, og velg deretter Ytelsesanalyse. Velg Start innspilling, og oppdater visualobjekter. Utvid et visualobjekt i tabellen nedenfor for å se alternativer for å kopiere spørring eller kjøre i DAX-spørringsvisning. Når du velger Kjør i DAX-spørringsvisning, legges den til som en ny spørringsfane i DAX-spørringsvisning og kjører den.
DAX-spørringsvisning og live-tilkobling i Power BI Desktop
Power BI Desktop kan koble til en publisert Power BI-semantisk modell direkte ved å klikke Koble til når en semantisk modell velges i OneLake-datahuben. Nederst til høyre i rapportvisningen vises Direkte koblet til semantisk Power BI-modell. DAX-spørringsvisning kan brukes til å skrive DAX-spørringer når direkte tilkoblet.
Modellmål
Når du er direkte koblet til en publisert Semantisk Power BI-modell, kan du ikke vise eller redigere modellmål. Hurtigspørringsalternativer er begrenset til bare evaluer.
Rapportmål
Når du er direkte koblet til en publisert Semantisk Power BI-modell, kan du opprette rapportmål. Rapportmål kan opprettes ved hjelp av handlingen Ny mål i rapport- og modellvisning , men som navnet antyder, er det bare tilgjengelig i den gjeldende rapporten. Når du har opprettet, viser hurtigspørringene i DAX-spørringsvisningen alternativet Definer med referanser og evaluer. DAX-spørringer kjøres på den semantiske modellen, så rapportmål må alltid konverteres til MÅL for DAX-spørringsomfang i DEFINE MEASURE-blokken som skal kjøres, siden de ikke finnes i selve modellen.
Oppdater modell med endringer-knappen og CodeLens-alternativene for oppdateringsmodellen er ikke tilgjengelige for rapportmål.
DAX-spørringsvisning på nett
Skrive DAX-spørringer fra publiserte semantiske modeller bruker DAX-spørringsvisning på nettet. DAX-spørringsvisning på nettet er den samme opplevelsen i Power BI Desktop, med et par unntak.
- Brukeren kan redigere datamodeller i Power Bi-tjeneste (forhåndsversjon) power bi arbeidsområdeinnstillingen må være aktivert for å skrive DAX-spørringer. Mer informasjon at Rediger datamodeller i Power Bi-tjeneste.
- DAX-spørringer forkastes ved lukking. DAX-spørringer i Power BI Desktop lagres i modellen, og en semantisk modell kan ha DAX-spørringer som allerede er lagret i modellen. DAX-spørringsvisning på nettet vil for øyeblikket ikke vise tidligere lagrede DAX-spørringer som kan finnes i den semantiske modellen, og spørringer som er opprettet på nettet, beholdes ikke når du lukker nettleseren.
- Skriv DAX-spørringer krever skrivetillatelse på den semantiske modellen. Brukere av arbeidsområdet må bruke Power BI Desktop med live-tilkobling til den semantiske modellen for å skrive DAX-spørringer.
Hensyn og begrensninger
Hensyn du bør huske på:
- 500+ linjer i redigeringsprogrammet for DAX-spørringer har merkbar forsinkelse når du skriver.
- Hurtighandlinger for lyspære for mål vises bare når ingen DEFINE-setning er i spørringsfanen.
- Kommandopaletten viser noen kommandoer som ennå ikke fungerer.
- Resultatrutenettet viser ennå ikke kolonner og mål med angitt format, for eksempel Valuta, Heltall med tusener osv.
- Last ned denne filen fra Power Bi-tjeneste inkluderer ikke DAX-spørringene som er lagret i den publiserte semantiske modellen.
- Hvis du konfigurerer den første Git-integreringen fra arbeidsområdet, inkluderes ikke DAX-spørringer som er lagret i den publiserte semantiske modellen. Mer informasjon at Fabric Git-integrasjon.
Og det finnes noen begrensninger å huske på:
- Maksimalt 15 MB data per spørring. Når 15 MB er overskredet, fullføres gjeldende rad, men ingen flere rader skrives.
- Maksimum 1 000 000 verdier per spørring. Hvis du spør etter 20 kolonner, kan du få tilbake maksimalt 50 000 rader (1 million dividert med 20).
- Definer alle mål i denne tabellen eller modellen er utilgjengelig når det er mer enn 500 mål.
Kjøring av DAX-spørringer på nettet har flere limitaitons:
- Maksimalt 99 999 rader returneres per spørring.
- Skrivetillatelse på den semantiske modellen. Brukere med kompileringstillatelse kan bruke Power BI Desktop til å koble til og bruke DAX-spørringsvisning til å kjøre DAX-spørringer.
- Bare tilgjengelig for semantiske modeller som ikke er standard. Du kan bruke Power BI Desktop til å koble til standard semantisk modell og bruke DAX-spørringsvisning til å kjøre DAX-spørringer.
- Brukeren kan redigere datamodeller i Power Bi-tjeneste (forhåndsversjon) power bi arbeidsområdeinnstillingen må være aktivert for å skrive DAX-spørringer. Mer informasjon at Redigere datamodeller i Power Bi-tjeneste