Delen via


Werken met de DAX-queryweergave

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

DAX-queries

In Power BI worden DAX-formules gebruikt om verschillende typen berekeningen voor uw gegevens te definiëren en kunnen ze 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 die zijn gemaakt of bijgewerkt met de DAX-query DEFINE MEASURE, zijn DAX-querybereikmetingen, die alleen worden uitgevoerd in de context van de DAX-query. DAX-metingen met querybereik kunnen aan het model worden toegevoegd met behulp van het bijwerken van modelacties via CodeLens of de model bijwerken met wijzigingen knop.

Zie de 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 van de DAX-queryweergave in Power BI Desktop.

Kies in de werkruimte van de Power BI-service of de Fabric portal DAX-query's schrijven in het contextmenu.

Schermopname van het toegangspunt DAX-query's schrijven in het contextmenu van een semantisch model.

Selecteer bovenaan de pagina DAX-query's schrijven op de details pagina van het semantische model in de Power BI-service of het Fabric-portal.

Schermafbeelding van de toegang tot het schrijven van DAX-query's op de detailpagina van het semantische model.

Indeling van DAX-queryweergave

Laten we eens nader kijken naar de DAX-queryweergave 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 de gangbare acties bij het schrijven van DAX-query's.

schermopname van het lint van de DAX-queryweergave.

Laten we eens kijken naar elementen op het lint:

Formaat 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 lijnen toegevoegd. Het opmaken van uw DAX-query wordt als best practice beschouwd en verbetert de leesbaarheid van DAX-query's. De opmaak wordt zodanig uitgevoerd dat u secties van de query kunt samenvouwen en uitvouwen.

Schermopname van de knop 'Query Opmaken'.

Opmerking plaatsen en opmerking verwijderen

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 actie reageert op de regels en wanneer de DAX-query wordt uitgevoerd, worden deze regels genegeerd.

Selecteer de Opmerking verwijderen knop op het lint om // aan het begin van een regel waar de cursor zich bevindt, of bij alle geselecteerde regels, te verwijderen. Het werkt niet op regels waar meerdere regel-commentaarnotatie wordt toegevoegd.

U kunt ook Ctrl+/ gebruiken om tussen opmerking plaatsen en verwijderen te schakelen.

nl-NL: Schermafbeelding van de knoppen Opmerking maken en Opmerking verwijderen op het lint van de DAX-queryweergave.

Zoeken en vervangen

Selecteer de Vinden-knop van het lint 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 Vervangfunctie in de werkbalk van de DAX-queryweergave.

Opdrachtpalet

Selecteer de lintknop Opdrachtpalet of gebruik Ctrl+Alt+P om het opdrachtenpaletvak te openen. U kunt zoeken naar meer 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.

Uitvoeren en annuleren

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, verandert de knop in een Annuleren knop, die kan worden gebruikt om een actieve query te stoppen.

Schermafbeelding van de DAX-queryweergave annuleren.

Model bijwerken met wijzigingen

De knop Model bijwerken met wijzigingen voegt aan modelmetingen toe of overschrijft ze door de DAX-formules van de DAX-query gedekte metingen. DAX-metingen met querybereik zijn DAX-formules in het blok DEFINE MEASURE. U kunt er ook voor kiezen om modelmetingen afzonderlijk toe te voegen of te overschrijven met behulp van de CodeLens-tekst die boven elke tekst wordt weergegeven.

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 hoverfunctie om meetformules te bekijken.

Selecteer om snelle acties voor het meten van gloeilampen te zien

Bij het selecteren van een meting in een EVALUATE-instructie in een query zonder een DEFINE-instructie, wordt het snelle-acties lampje 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 nuttig bij het maken van metingen, omdat u ze eerst binnen de reikwijdte van een DAX-query kunt definiëren. 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 neemt deze stap verder door prompts op te geven wanneer de meting al bestaat in het model. Deze bieden snelle koppelingen om de meting toe te voegen of de meting te overschrijven in het model.

CodeLens is de klikbare tekst die boven een DEFINE MEASURE-blok wordt weergegeven. Voor DAX-querygebiedsmetingen die nog niet in het model aanwezig zijn, verschijnt het Model bijwerken: Nieuwe meting toevoegen CodeLens, waarmee de modelmeting wordt toegevoegd wanneer erop wordt geklikt. Voor DAX-querymetrieken die al in het model aanwezig zijn en wanneer de DAX-formule van de gerichte meting verschilt, verschijnt de CodeLens 'Model bijwerken: Meting overschrijven', waarmee de modelmeting naar deze DAX-formule wordt gewijzigd zodra erop wordt geklikt.

U kunt ook meerdere metingen tegelijk toevoegen of overschrijven door op het updatemodel te klikken met de knop Wijzigingen in de opdrachtbalk .

Schermopname van het updatemodel met de knop Wijzigingen beschikbaar in de DAX-queryweergave.

Werkstroom voor het bijwerken van metingen

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

  1. Kies in het contextmenu van een meting Snelle queries en vervolgens Evalueren om de query voor u aan te maken op een nieuw tabblad Query.
  2. Selecteer de maatregel in de query om te definiëren of te definiëren met verwijzingen en voeg de DEFINITIE-instructie toe.
  3. DaX-formules bijwerken naar de meting en voer vervolgens de DAX-query uit om de resultaten te bekijken.
  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. Wijzig het formaat van het raster door de pijlen in de rechterbovenhoek of de rand tussen het resultaatraster en de queryeditor te slepen.

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

Schermopname van het foutbericht in het resultatenraster.

Met een knop Kopiëren 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.

Query-tabbladen

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 u de query uitvoert.
  • 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 DAXQueries-map van de semantische modelmap of rapportmap als deze zijn gemaakt in een rapport dat is verbonden met live. Meer informatie vindt u in de documentatie voor de ontwikkelaarsmodus van Power BI.

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

Tabbladen in de DAX-queryweergave worden verwijderd bij het sluiten wanneer u DAX-query's schrijft vanuit de Power BI-service of de Fabric-portal.

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 vragen

Het gegevensvenster contextmenu bevat snelle queries. 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.

Ergens
  • 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.

  • Nieuwe maatregel definiëren maakt een query met een meetblok. Gebruik deze om uw eigen meting te maken in de DAX-queryweergave en vervolgens toe te voegen aan uw model wanneer u klaar bent.

Tabellen
  • Toon de bovenste 100 rijen maakt een query aan door SELECTCOLUMNS() te gebruiken om de bovenste 100 rijen van de tabel weer te geven. De kolommen worden op elke regel vermeld, 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 maatregelen in deze tabel om een query te creëren waarin de maatregelformules van deze tabel worden getoond.

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

    Schermopname van de gegevensvoorbeeldweergave.

  • 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 kolomweergave.

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 evaluatiemeting.

  • Definieer en evalueert een query die het resultaat van de meting en de formule van de meting in een DEFINE-instructie weergeeft, 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 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. Selecteren op Uitvoeren in de DAX-queryweergave neemt de visual query, voegt deze toe als een nieuw querytabblad in de DAX-queryweergave, en voert deze vervolgens uit.

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

DAX-query weergave en live verbinding in Power BI Desktop

Power BI Desktop kan live verbinding maken met een gepubliceerd semantisch Power BI-model door op Verbinden te klikken wanneer een semantisch model is geselecteerd in de OneLake-gegevenshub. In de rechterbenedenhoek van de rapportweergave staat Live verbonden met het Power BI-semantische model. DAX-queryweergave kan worden gebruikt om DAX-query's te schrijven wanneer er live verbinding is.

Modelmetingen

Wanneer u live bent verbonden met een gepubliceerd semantisch Power BI-model, kunt u modelmetingen niet bekijken of bewerken. Opties voor snelle query's zijn beperkt tot alleen Evalueren.

Rapportmaatregelen

Wanneer u live bent verbonden met een gepubliceerd semantisch Power BI-model, kunt u rapportmetingen maken. Rapportmetingen kunnen worden gemaakt met behulp van de actie Nieuwe meting in de rapport- en modelweergave, maar zoals de naam al doet vermoeden, zijn alleen beschikbaar in het huidige rapport. Zodra de snelle query's zijn aangemaakt, toont de DAX-queryweergave de optie om te definiëren met verwijzingen en te evalueren. DAX-query's worden uitgevoerd op het semantische model, dus rapportmetingen moeten altijd worden geconverteerd naar DAX-querybereikmetingen in het blok DEFINE MEASURE dat moet worden uitgevoerd, omdat deze niet aanwezig zijn in het model zelf.

Het model bijwerken met de knop Wijzigingen en de CodeLens-opties voor het bijwerken van het model zijn niet beschikbaar voor rapportmetingen.

DAX-queryweergave op het web

Schrijf DAX-query's van gepubliceerde semantische modellen met behulp van de DAX-queryweergave in het web. DaX-queryweergave op internet is dezelfde ervaring in Power BI Desktop, met een aantal uitzonderingen.

  • Gebruiker kan gegevensmodellen bewerken in de Power BI-service (preview). De instelling voor de Power BI-werkruimte moet zijn ingeschakeld om DAX-query's te kunnen schrijven. Meer informatie vindt u op Gegevensmodellen bewerken in de Power BI-service.
  • DAX-queries worden bij het sluiten verwijderd. DAX-query's in Power BI Desktop worden opgeslagen in het model en een semantisch model kan DAX-query's bevatten die al in het model zijn opgeslagen. In de DAX-queryweergave op het web worden momenteel geen eerder opgeslagen DAX-query's weergegeven die mogelijk aanwezig zijn in het semantische model en worden query's die op internet zijn gemaakt, niet bewaard nadat u de browser hebt gesloten.
  • Het schrijven van DAX-query's vereist schrijfmachtigingen voor het semantische model. Werkruimteviewers moeten Power BI Desktop gebruiken met een liveverbinding met het semantische model om DAX-query's te schrijven.

Een DAX-query die is toegevoegd als parameter met behulp van ?query= nadat de URL die is gekoppeld aan de DAX-queryweergave in het web, niet meer wordt ondersteund.

Overwegingen en beperkingen

Overwegingen waarmee u rekening moet houden:

  • 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.
  • In het opdrachtenpalet ziet u enkele opdrachten die nog niet werken.
  • In het resultaatraster worden geen kolommen en metingen met een opgegeven notatie weergegeven, zoals Valuta, Geheel getal met duizenden, enzovoort.
  • Het instellen van de initiële Git-integratie vanuit de werkruimte zal geen DAX-query's omvatten 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 in het model niet beschikbaar is wanneer er meer dan 500 metingen zijn.

Het uitvoeren van DAX-query's in het web heeft extra limieten:

  • Er worden maximaal 99.999 rijen per query geretourneerd.
  • Schrijfrechten voor het semantische model. Kijkers met een bouwmachtiging kunnen Power BI Desktop gebruiken om een live verbinding te maken en de DAX-queryweergave te gebruiken om DAX-query's uit te voeren.
  • Alleen beschikbaar voor niet-standaard semantische modellen. U kunt Power BI Desktop gebruiken om live verbinding te maken met het standaard semantische model en de DAX-queryweergave gebruiken om DAX-query's uit te voeren.
  • Gebruiker kan gegevensmodellen bewerken in de Power BI-service (preview). De instelling voor de Power BI-werkruimte moet zijn ingeschakeld om DAX-query's te kunnen schrijven. Meer informatie vindt u op Gegevensmodellen bewerken in de Power BI-service