Delen via


Werken met de DAX-queryweergave

Met de DAX-queryweergave in Power BI kunt u DAX-query's (Data Analysis Expressions) in semantische modellen bekijken en ermee werken.

DAX-query's

In Power BI worden DAX-formules gebruikt om verschillende typen berekeningen voor uw gegevens te definiëren, maar kunnen ook worden gebruikt om rolbeveiliging te definiëren. DAX-query's kunnen daarentegen worden gebruikt om gegevens uit het model te retourneren.

DAX-query's zijn vergelijkbaar met SQL-query's, omdat ze u gegevens kunnen laten zien die u al hebt. DAX-query's maken geen items in het model of de visuals in het rapport.

DAX-query's hebben twee hoofdonderdelen:

  • Een EVALUATE-instructie , die vereist is. Hiermee geeft u op wat en hoe gegevens worden geretourneerd in de query.
  • Een DEFINE-instructie , die optioneel is. Hiermee kunt u DAX-formules, zoals een meting, definiëren die u in de query kunt gebruiken. Metingen kunnen worden toegevoegd aan het model met behulp van CodeLens wanneer ze worden gebruikt in DEFINE.

Zie DAX-query's in de DAX-verwijzing voor meer informatie over hoe query's worden gebruikt.

DAX-queryweergave openen

Selecteer in Power BI Desktop het pictogram DAX-queryweergave aan de linkerkant.

Schermopname van het pictogram voor de DAX-queryweergave in Power BI Desktop.

Indeling van DAX-queryweergave

Laten we de DAX-queryweergave nader bekijken in Power BI Desktop.

Diagram met de indeling van de DAX-queryweergave.

De DAX-queryweergave bevat deze elementen:

Lint

Het lint van de DAX-queryweergave bevat algemene acties die worden gebruikt bij het schrijven van DAX-query's.

Schermopname van het lint van de DAX-queryweergave.

Laten we eens kijken naar elementen op het lint:

Indeling query

Selecteer de knop Query opmaken of gebruik Shift+Alt+F om de huidige query op te maken. De query wordt ingesprongen met tabbladen. DAX-functies worden gewijzigd in HOOFDLETTERS en er worden extra regels toegevoegd. Het opmaken van uw DAX-query wordt als best practice beschouwd en verbetert de leesbaarheid van DAX-query's. De opmaak wordt ook zodanig ingesprongen dat u secties van de query kunt samenvouwen en uitvouwen.

Schermopname van de knop Query opmaken.

Opmerking en opmerking ongedaan maken

Selecteer de knop Opmerking op het lint om een dubbele backslash (//) toe te voegen aan het begin van de regel waar de cursor zich bevindt of alle geselecteerde lijnen. Deze opmerkingen bevatten de regels en wanneer de DAX-query wordt uitgevoerd, worden deze regels genegeerd.

Selecteer de knop Opmerkingen op het lint verwijderen om te verwijderen // aan het begin van een regel waar de cursor zich bevindt of alle geselecteerde lijnen. Het werkt niet op regels waar meerdere regelcommentaar-notatie wordt toegevoegd.

U kunt ook Ctrl+/ gebruiken om tussen opmerkingen en opmerkingen te schakelen.

Schermopname van de knoppen Opmerking en Opmerkingen op het lint van de DAX-queryweergave.

Zoeken en vervangen

Selecteer de knop Lint zoeken of gebruik Ctrl+F om te zoeken naar tekst in de DAX-queryeditor. Zoeken bevat opties om hoofdletters te vergelijken, hele woord te vergelijken, een reguliere expressie te gebruiken en alle overeenkomsten voor de huidige query te doorlopen. U kunt ook de dubbele punthaak links van het vak Zoeken selecteren om Vervangen in te voeren.

Schermopname van de knop Zoeken op het lint van de DAX-queryweergave.

Selecteer de knop Vervangen op het lint of gebruik Ctrl+H om tekst te zoeken en te vervangen in de DAX-queryeditor. Vervangen bevat opties voor het behouden van het hoofdlettergebruik en het vervangen van één voor één of allemaal tegelijk.

Schermopname van de mogelijkheid Vervangen in het lint van de DAX-queryweergave.

Opdrachtpalet

Selecteer de lintknop Opdrachtpalet of gebruik Ctrl+Alt+P om het opdrachtenpaletvak te openen. U kunt zoeken naar aanvullende ACTIES van de DAX-queryeditor en de bijbehorende sneltoetsen bekijken.

Schermopname van het opdrachtenpalet voor de DAX-queryweergave.

Opdrachtbalk

De opdrachtbalk van de DAX-queryweergave bevat de belangrijkste acties bij het gebruik van de DAX-queryweergave. Met de knop Uitvoeren wordt de DAX-query of de geselecteerde regels van een query uitgevoerd. De status van een query nadat deze is uitgevoerd, wordt weergegeven op de onderste statusbalk.

Schermopname van de opdrachtbalk van de DAX-queryweergave.

Wanneer een query wordt uitgevoerd, wordt de knop Annuleren , die kan worden gebruikt om een actieve query te stoppen.

Schermopname van het annuleren van de DAX-queryweergave.

DAX-queryeditor

De DAX-queryweergave bevat een queryeditor waarin u query's kunt schrijven en bewerken. Het is meer dan alleen een grotere DAX-formulebalk. Het is krachtiger en heeft veel overeenkomsten met de DAX-editor die beschikbaar is in VS Code.

DAX-queryeditor heeft de volgende elementen:

Suggesties en IntelliSense

Typ uw query en krijg hulp bij suggesties en IntelliSense tijdens het bewerken.

Schermopname van de DAX-queryeditor intellisense.

Gebruik ENTER of TAB om de gemarkeerde intellisense toe te voegen, of Shift+ENTER of Alt+ENTER om naar een andere regel te gaan zonder de intellisense-optie toe te voegen. Als u Esc selecteert, wordt een van de overlays gesloten.

Beweeg de muisaanwijzer om metingformules weer te geven

Wanneer een meting is opgenomen in de DAX-query, kunt u de muisaanwijzer erop bewegen om de formule, naam en beschrijving weer te geven.

Schermopname van de aanwijsfunctie voor metingformules.

Selecteer deze optie om snelle acties voor het meten van gloeilampen weer te geven

Als u een meting selecteert in een EVALUATE-instructie in een query zonder een DEFINE-instructie, wordt de gloeilamp snelle acties weergegeven. Selecteer Definiëren of Definiëren met verwijzingen om een DEFINE-instructie te maken met de formule van deze meting met of zonder dax-formules voor referentiemeting.

Modelmetingen bijwerken met CodeLens

Het gebruik van DEFINE MEASURE is handig bij het maken van metingen. U kunt meerdere metingen in één venster bewerken en vervolgens de query uitvoeren om de resultaten van alle of slechts enkele met specifieke groepen op kolommen weer te geven. U hoeft geen tabelvisual te maken in de rapportweergave en heen en weer te schakelen tussen metingsformules. CodeLens doet dit nog een stap verder door prompts op te geven wanneer de meting al in het model bestaat, of als deze niet bestaat, kan deze worden toegevoegd.

Werkstroom voor bijwerken meten

De snelle acties van gloeilampen en CodeLens kunnen samen worden gebruikt in een volledige werkstroom:

  1. Kies in het contextmenu van een meting snelle query's en evalueer vervolgens of de query voor u is gemaakt op een nieuw tabblad Query.
  2. Selecteer de meting in de query om te definiëren of definiëren met verwijzingen en voeg de INSTRUCTIE DEFINE toe.
  3. Maak expressie-updates voor de meting en voer vervolgens de DAX-query uit om de wijziging weer te geven.
  4. Wanneer de wijziging wordt weergegeven zoals verwacht, gebruikt u het CodeLens Update-model: Overschrijf de meting om deze weer op te slaan in het model.

Hier volgt een meer visuele manier om inzicht te verkrijgen in de werkstroom:

Diagram van de werkstroom.

Resultatenraster

Wanneer een query wordt uitgevoerd, worden de resultaten weergegeven in het resultatenraster.

Schermopname van het resultatenraster.

Als er meer dan één EVALUATE-instructie in de queryeditor staat, kunnen meerdere resultaten worden geretourneerd. U kunt de vervolgkeuzelijst Resultaat gebruiken om ertussen te schakelen. Met de knop Kopiëren wordt het hele raster gekopieerd als een tabel met door tabs gescheiden tabel met kopteksten. Het raster kan worden aangepast met behulp van de pijlen in de rechterbovenhoek of handmatig met de cursor op de rand tussen het resultaatraster en de query-editor.

Als de query resulteert in een fout, wordt dit weergegeven in het resultatenraster.

Schermopname van het foutbericht in het resultatenraster.

Met een kopieerknop wordt de fout naar het Klembord overgedragen. Het begin van de fout geeft aan waar in de query de fout is. In de bovenstaande afbeelding ziet u de volgende fout:

"Query (4, 23) De waarde voor 'Verkoop 2' kan niet worden bepaald. De kolom bestaat niet of er is geen huidige rij voor deze kolom.'

En 'Query (4, 23)' geeft aan dat de fout zich op regel 4 en op teken 23 bevindt.

Querytabbladen

De DAX-queryweergave kan meerdere querytabbladen hebben, waarvan de naam kan worden gewijzigd of verwijderd. Ze geven ook de huidige status van de query weer.

Schermopname van de tabbladen Query.

Elk tabblad bevat een statusindicator:

  • Er wordt geen indicator weergegeven voordat een query is uitgevoerd.
  • Een groen vinkje geeft aan dat de query is uitgevoerd.
  • Een rood kruis geeft aan dat er een fout is opgetreden.
  • Een gevuld vierkant in een cirkel geeft aan dat de query is geannuleerd.
  • Een klok geeft aan dat de query wordt uitgevoerd.

Query's kunnen op de achtergrond worden uitgevoerd, zodat u verder kunt werken aan andere querytabbladen.

Opslaan van DAX-query's

Querytabbladen in de DAX-queryweergave worden opgeslagen in het bestand wanneer u opslaat vanuit Power BI Desktop, zodat u kunt doorgaan waar u was gebleven wanneer u het bestand opnieuw opent. Als u de ontwikkelaarsmodus gebruikt om een Power BI-project op te slaan, wordt elk querytabblad opgenomen als een DAX-bestand in de map DAXQueries van de semantische modelmap. Meer informatie vindt u in de documentatie voor de ontwikkelaarsmodus van Power BI.

Op dit moment kunt u de DAX-query's in de Power BI-service niet weergeven of bewerken. Kijkers van het rapport of het semantische model zien de DAX-query's die zijn opgeslagen met het semantische model niet.

Gegevensvenster

In het deelvenster Gegevens worden de items in het model weergegeven om u te helpen bij het schrijven van query's. De bewerkingspaden voor de meeste van deze items worden geblokkeerd in de queryweergave.

Snelle query's

Het contextmenu gegevensvenster bevat snelle query's. Gebruik snelle query's om query's te maken op een nieuw querytabblad voor tabellen, kolommen en metingen. Snelle query's zijn ontworpen als productiviteitsverhoging voor algemene taken en gebouwd, zodat ze eenvoudig verder kunnen worden gewijzigd. Alle snelle query's worden gemaakt op een nieuw querytabblad en worden automatisch uitgevoerd.

Overal

Definieer alle metingen in het model om een query te maken met alle metingformules die in een query worden weergegeven. U kunt eenvoudig zoeken in al uw metingformules.

Tabellen
  • Met SELECTCOLUMNS() kunt u de bovenste 100 rijen van de tabel weergeven met behulp van SELECTCOLUMNS() om de bovenste 100 rijen van de tabel weer te geven. De kolommen worden op elke regel weergegeven, zodat u ze eenvoudig kunt wijzigen door regels als commentaar te plaatsen. Er is ook een ORDER BY opgenomen om uw sorteervolgorde op te geven.

    Schermopname van de bovenste 100 rijen weergeven.

  • Kolomstatistieken weergeven maakt een query met statistische informatie voor elke kolom in uw tabel. Zie veel van de formules voor het samenvoegen van kolommen als MIN, MAX, AVERAGE, COUNT en meer.

  • Definieer alle metingen in deze tabel om een query te maken met de metingformules van deze tabel die worden weergegeven in een query.

Kolommen
  • Gegevensvoorbeeld weergeven maakt een query met DISTINCT() om de waarden van een kolom te bekijken.

    Schermopname van het voorbeeld van de gegevens weergeven.

  • Kolomstatistieken weergeven maakt een query met statistische informatie voor deze specifieke kolom. Zie veel formules voor het aggregeren van de kolom als MIN, MAX, AVERAGE, COUNT en meer. De geretourneerde query is afhankelijk van het gegevenstype van de kolom, met verschillende statistieken voor numerieke, tekst- en datumkolommen.

    Schermopname van het voorbeeld van de weergavekolom.

Metingen
  • Evalueren maakt een query om het resultaat van de meting weer te geven. SUMMARIZECOLUMNS() wordt gebruikt, zodat u elke groep per kolom kunt toevoegen om de meting weer te geven op specifieke groepen, zoals Land, Product, enzovoort.

    Schermopname van de meting evalueren.

  • Definieer en evalueert een query om het resultaat van de meting weer te geven en de formule van de meting weer te geven in een DEFINE-instructie die vervolgens kan worden gewijzigd.

    Schermopname van de meting definiëren en evalueren.

  • Met verwijzingen definiëren en evalueren wordt een query gemaakt om het resultaat van de meting weer te geven en niet alleen de formule van de meting weer te geven in een DEFINE-instructie die kan worden gewijzigd, maar ook andere metingen waarnaar wordt verwezen in de metingformule. Bewerk een deel in de volledige context van de meting.

    Schermopname van definiëren met verwijzingen en evalueren.

Visuele DAX-query's ophalen uit Performance Analyzer

Visuals in de rapportweergave halen gegevens op uit het model door een DAX-query te maken. De visuele query kan worden weergegeven in de DAX-queryweergave met behulp van Performance Analyzer. Performance Analyzer kan u inzicht geven in de reden waarom een visual mogelijk een onverwachte waarde weergeeft of gewoon als een manier om snel een query te starten die u verder kunt wijzigen.

Ga in de rapportweergave naar het lint Optimaliseren en selecteer Vervolgens Performance Analyzer. Selecteer Opname starten en visuals vernieuwen. Vouw in de onderstaande tabel een visual uit om opties weer te geven om query's te kopiëren of uit te voeren in de DAX-queryweergave. Als u in de DAX-queryweergave selecteert, wordt de visualquery gebruikt, wordt deze toegevoegd als een nieuw querytabblad in de DAX-queryweergave en wordt deze vervolgens uitgevoerd.

Schermopname van de visuele DAX-query's in de functie Performance Analyzer.

Overwegingen en beperkingen

De DAX-queryweergave is momenteel beschikbaar als preview-versie. Houd rekening met het volgende:

  • Model bijwerken: Met codeLens overschrijven worden opmerkingen in de DAX-formule verwijderd.
  • Model bijwerken: Metingen overschrijven codeLens wordt niet weergegeven met alleen opmaakwijzigingen.
  • Updatemodel: Metingen die CodeLens overschrijven, kunnen extra regels opleveren wanneer er een syntaxisfout optreedt.
  • Meer dan 500 regels in de DAX-queryeditor hebben merkbare vertraging bij het typen.
  • Snelle acties voor gloeilampen voor metingen worden alleen weergegeven wanneer er geen DEFINE-instructie op het querytabblad staat.
  • Het opmaken van query-einden rangschikt de RANKX-functie.
  • Opdrachtenpalet toont opdrachten die nog niet werken.
  • Querytabbladen staan het verplaatsen nog niet toe.
  • In het resultaatraster worden nog geen kolommen en metingen met een opgegeven notatie weergegeven, zoals Valuta, Wie le number with duizenden, enzovoort.
  • Download dit bestand van Power BI-service bevat niet de DAX-query's die zijn opgeslagen in het gepubliceerde semantische model.
  • Het instellen van de eerste Git-integratievanuit de werkruimte bevat geen DAX-query's die zijn opgeslagen in het gepubliceerde semantische model. Meer informatie vindt u in Fabric Git-integratie.

En er zijn enkele beperkingen om rekening mee te houden:

  • Maximaal 15 MB aan gegevens per query. Zodra 15 MB is overschreden, wordt de huidige rij voltooid, maar worden er geen extra rijen geschreven.
  • Maximaal 1.000.000 waarden per query. Als u een query uitvoert op 20 kolommen, kunt u maximaal 50.000 rijen terughalen (1 miljoen gedeeld door 20).
  • Definieer alle metingen in deze tabel of het model niet wanneer er meer dan 500 metingen zijn.