Arbeiten mit der DAX-Abfrageansicht

Wichtig

Die DAX-Abfrageansicht befindet sich derzeit in der Vorschau.

Mit der DAX-Abfrageansicht in Power BI können Sie Datenanalyseausdrücke (DATA Analysis Expressions, DAX)-Abfragen in Semantikmodellen anzeigen und bearbeiten.

DAX-Abfragen

In Power BI werden DAX-Formeln verwendet, um verschiedene Berechnungstypen für Ihre Daten zu definieren. Sie können aber auch zum Definieren der Rollensicherheit verwendet werden. DAX-Abfragen können dagegen verwendet werden, um Daten aus dem Modell zurückzugeben.

DAX-Abfragen ähneln SQL-Abfragen, in denen sie Daten anzeigen können, die Sie bereits haben. DAX-Abfragen erstellen keine Elemente im Modell oder visuellen Elemente im Bericht.

DAX-Abfragen verfügen über zwei Hauptkomponenten:

  • Eine EVALUATE-Anweisung, die erforderlich ist. Sie gibt an, was und wie Daten in der Abfrage zurückgegeben werden.
  • Eine DEFINE-Anweisung, die optional ist. Sie können DAX-Formeln definieren, z. B. ein Measure, das in der Abfrage verwendet werden soll. Measures können dem Modell mithilfe von CodeLens hinzugefügt werden, wenn sie in DEFINE verwendet werden.

Weitere Informationen zur Verwendung von Abfragen finden Sie unter DAX-Abfragen in der DAX-Referenz.

Öffnen der DAX-Abfrageansicht

Wählen Sie in Power BI Desktop das DAX-Abfrageansichtssymbol auf der linken Seite aus.

Screenshot of the DAX query view icon in Power BI Desktop.

DAX-Abfrageansichtslayout

Lassen Sie uns einen genaueren Blick auf die DAX-Abfrageansicht in Power BI Desktop werfen.

Diagram that shows the DAX query view layout.

Die DAX-Abfrageansicht enthält die folgenden Elemente:

Menüband

Das Menüband der DAX-Abfrageansicht enthält allgemeine Aktionen, die beim Schreiben von DAX-Abfragen verwendet werden.

Screenshot of the DAX query view ribbon.

Sehen wir uns die Elemente im Menüband genauer an:

Abfrage formatieren

Klicken Sie auf die Menübandschaltfläche Abfrage formatieren, oder verwenden Sie UMSCHALT+ALT+F, um die aktuelle Abfrage zu formatieren. Die Abfrage ist mit Registerkarten eingerückt. DAX-Funktionen werden in GROßBUCHSTABEN geändert und zusätzliche Zeilen werden hinzugefügt. Die Formatierung Ihrer DAX-Abfrage wird als bewährte Methode betrachtet und verbessert die Lesbarkeit der DAX-Abfrage. Die Formatierung wird auch so eingezogen, dass Sie Abschnitte der Abfrage reduzieren und erweitern können.

Screenshot of the Format query button.

Kommentar und Kommentar aufheben

Klicken Sie auf die Menübandschaltfläche Kommentar, um einen doppelten umgekehrten Schrägstrich (//) am Anfang der Zeile hinzuzufügen, in der sich der Cursor oder alle markierten Zeilen befinden. Dadurch werden die Zeilen auskommentiert, und wenn die DAX-Abfrage ausgeführt wird, werden diese Zeilen ignoriert.

Klicken Sie auf die Schaltfläche Kommentar aufheben, um // am Anfang einer beliebigen Zeile, in der sich der Cursor befindet, oder in allen markierten Linien zu entfernen. Es funktioniert nicht in Zeilen, in denen mehrere Zeilenkommentarnotationen hinzugefügt sind.

Sie können auch STRG+/verwenden, um zwischen Kommentar und Auskommentierung umzuschalten.

Screenshot of the Comment and Uncomment buttons in the DAX query view ribbon.

Suchen und Ersetzen

Klicken Sie auf die Schaltfläche Menüband suchen, oder verwenden Sie STRG+F, um im DAX-Abfrage-Editor nach Text zu suchen. Das Suchen enthält Optionen zum Abgleichen der Groß-/Kleinschreibung, Übereinstimmung mit ganzen Wörtern, Verwenden eines regulären Ausdrucks und Durchlaufen aller Übereinstimmungen für die aktuelle Abfrage. Sie können auch links neben dem Suchfeld auf das Chevron klicken, um „Ersetzen“ einzugeben.

Screenshot of the find button in the DAX query view ribbon.

Klicken Sie im Menüband auf die Schaltfläche Ersetzen, oder verwenden Sie STRG+H, um im DAX-Abfrage-Editor nach Text zu suchen und zu ersetzen. Ersetzen enthält Optionen, um den Fall beizubehalten und einzeln oder alle gleichzeitig zu ersetzen.

Screenshot of the Replace capability in the DAX query view ribbon.

Befehlspalette

Klicken Sie auf die Menübandschaltfläche Befehlspalette, oder verwenden Sie STRG+ALT+P, um das Befehlspalettenfeld zu öffnen. Sie können nach weiteren DAX-Abfrage-Editor-Aktionen suchen und die zugehörigen Tastenkombinationen anzeigen.

Screenshot of the DAX query view command palette.

Befehlsleiste

Die DAX-Abfrageansichts-Befehlsleiste enthält die wichtigsten Aktionen bei Verwendung der DAX-Abfrageansicht. Die Schaltfläche Ausführen führt die DAX-Abfrage oder die ausgewählten Zeilen einer Abfrage aus. Der Status einer Abfrage, nachdem sie ausgeführt wurde, wird in der unteren Statusleiste angezeigt.

Screenshot of the DAX query view command bar.

Wenn eine Abfrage ausgeführt wird, wird die Schaltfläche zu einer Abbrechen-Schaltfläche, die verwendet werden kann, um eine laufende Abfrage zu beenden.

Screenshot of the DAX query view cancel.

DAX-Abfrage-Editor

Die DAX-Abfrageansicht enthält einen Abfrage-Editor, in dem Sie Abfragen schreiben und bearbeiten können. Es ist mehr als nur eine größere DAX-Bearbeitungsleiste. Es ist leistungsfähiger und hat viele Ähnlichkeiten mit dem DAX-Editor, der in VS Code verfügbar ist.

Der DAX-Abfrage-Editor verfügt über die folgenden Elemente:

Vorschläge und IntelliSense

Geben Sie Ihre Abfrage ein, und erhalten Sie beim Bearbeiten Hilfe durch Vorschläge und IntelliSense.

Screenshot of the DAX query editor intellisense.

Verwenden Sie die EINGABETASTE oder TAB, um den hervorgehobenen IntelliSense hinzuzufügen, oder UMSCHALT+EINGABETASTE oder ALT+EINGABETASTE, um zu einer anderen Zeile zu wechseln, ohne die IntelliSense-Option hinzuzufügen. Durch Klicken auf ESC wird eine der Überlagerungen geschlossen.

Anzeigen von Measureformeln mit der Maus

Wenn ein Measure in der DAX-Abfrage enthalten ist, können Sie mit der Maus darauf zeigen, um die Formel, den Namen und die Beschreibung anzuzeigen.

Screenshot of the hover to see measure formula feature.

Klicken Sie hier, um Schnellaktionen zur Messung anzuzeigen

Wenn Sie in einer EVALUATE-Anweisung in einer Abfrage ohne DEFINE-Anweisung auf ein Measure klicken, werden die Schnellaktionen angezeigt. Klicken Sie auf Definieren oder Mit Verweisen definieren, um eine DEFINE-Anweisung mit der Formel dieses Measures mit oder ohne DAX-Verweisformeln zu erstellen.

Aktualisieren von Modellkennzahlen mithilfe von CodeLens

Die Verwendung von DEFINE MEASURE ist beim Erstellen von Measures hilfreich. Sie können mehrere Measures in einem Fenster bearbeiten und dann die Abfrage ausführen, um die Ergebnisse aller oder nur einiger davon mit einer bestimmten Gruppe nach Spalten anzuzeigen. Sie müssen in der Berichtsansicht keine Tabellenansicht erstellen und zwischen Measureformeln hin und her wechseln. CodeLens führt diesen Schritt weiter aus, indem es Eingabeaufforderungen bereitstellt, wenn das Measure bereits im Modell vorhanden ist oder, wenn dies nicht der Fall ist, kann es hinzugefügt werden.

Messen des Aktualisierungsworkflows

Die Schnellaktionen und CodeLens können zusammen in einem vollständigen Workflow verwendet werden:

  1. Wählen Sie im Kontextmenü eines Measures „Schnelle Abfragen“ und dann „Auswerten“ aus, damit die Abfrage für Sie in einer neuen Registerkarte „Abfrage“ erstellt wird.
  2. Klicken Sie in der Abfrage auf das Measure, um „Definieren“ oder „Definieren mit Verweisen“ zu klicken, und die DEFINE-Anweisung hinzuzufügen.
  3. Nehmen Sie Ausdrucksaktualisierungen am Measure vor und führen Sie dann die DAX-Abfrage aus, um die Änderung anzuzeigen.
  4. Wenn die Änderung erwartungsgemäß angezeigt wird, verwenden Sie das CodeLens Update-Modell: Überschreiben Sie das Measure, um es wieder im Modell zu speichern.

Hier ist eine visuellere Möglichkeit, den Workflow zu verstehen:

Diagram of the workflow.

Ergebnisraster

Wenn eine Abfrage ausgeführt wird, werden die Ergebnisse im Raster Ergebnisse angezeigt.

Screenshot of the results grid.

Wenn im Abfrage-Editor mehr als eine EVALUATE-Anweisung vorhanden ist, können mehrere Ergebnisse zurückgegeben werden. Sie können die Ergebnisdropdownliste verwenden, um zwischen ihnen zu wechseln. Die Schaltfläche Kopieren kopiert das gesamte Raster als durch Tabstopp getrennte Tabelle mit Kopfzeilen. Das Raster kann mit den Pfeilen der oberen rechten Ecke oder manuell mit dem Cursor auf dem Rahmen zwischen dem Ergebnisraster und dem Abfrage-Editor geändert werden.

Wenn die Abfrage zu einem Fehler führt, wird das Ergebnisraster angezeigt.

Screenshot of the error message in the results grid.

Eine Schaltfläche zum Kopieren überträgt den Fehler in die Zwischenablage. Der Anfang des Fehlers gibt an, wo in der Abfrage der Fehler ist. In der obenstehenden Abbildung lautet der Fehlers:

Abfrage (4, 23) Der Wert für 'Sales 2' kann nicht bestimmt werden. Entweder ist die Spalte nicht vorhanden, oder es gibt keine aktuelle Zeile für diese Spalte.

Und „Abfrage (4, 23)“ gibt an, dass sich der Fehler in Zeile 4 und bei Zeichen 23 befindet.

Abfrageregisterkarten

Die DAX-Abfrageansicht kann mehrere Abfrageregisterkarten enthalten, die umbenannt oder entfernt werden können. Sie zeigen auch den aktuellen Status der Abfrage an.

Screenshot of the Query tabs.

Jede Registerkarte enthält eine Statusanzeige:

  • Es wird kein Indikator angezeigt, bevor eine Abfrage ausgeführt wurde.
  • Ein grünes Häkchen gibt an, dass eine erfolgreiche Abfrage ausgeführt wurde.
  • Ein rotes Kreuz gibt an, dass ein Fehler aufgetreten ist.
  • Ein ausgefülltes Quadrat in einem Kreis gibt an, dass die Abfrage abgebrochen wurde.
  • Eine Uhr gibt an, dass die Abfrage ausgeführt wird.

Abfragen können im Hintergrund ausgeführt werden, sodass Sie weiterhin auf anderen Abfrageregisterkarten arbeiten können.

Speichern von DAX-Abfragen

Abfrageregisterkarten der DAX-Abfrageansicht werden beim Speichern aus Power BI Desktop in der Datei gespeichert, sodass Sie den Vorgang fortsetzen können, an dem Sie aufgehört haben, wenn Sie die Datei erneut öffnen. Wenn Sie den Entwicklermodus zum Speichern eines Power BI-Projekts verwenden, wird jede Abfrageregisterkarte als DAX-Datei im ORDNER „DAXQueries“ des Semantikmodellordners enthalten. Weitere Informationen finden Sie in der Dokumentation zum Power BI-Deverlopermodus.

Derzeit können Sie die DAX-Abfragen im Power BI-Dienst nicht anzeigen oder bearbeiten. Viewer des Berichts- oder Semantikmodells sehen die mit dem Semantikmodell gespeicherten DAX-Abfragen nicht.

Daten (Bereich)

Im Bereich Daten werden die Elemente im Modell angezeigt, die Ihnen beim Schreiben von Abfragen helfen. Die Bearbeitungspfade für die meisten dieser Elemente werden in der Abfrageansicht blockiert.

Schnellabfragen

Der Kontextmenübereich Daten enthält Quickabfragen. Verwenden Sie schnelle Abfragen, um Abfragen auf einer neuen Abfrageregisterkarte für Tabellen, Spalten und Measures zu erstellen. Schnelle Abfragen sind so konzipiert, dass sie eine Produktivitätssteigerung für allgemeine Aufgaben und die Erstellung sind, damit sie problemlos weiter geändert werden können. Alle Schnellabfragen werden auf einer neuen Abfrageregisterkarte erstellt und automatisch ausgeführt.

Anywhere

Die Option „Alle Measures im Modell definieren“ erstellt eine Abfrage mit allen in einer Abfrage enthaltenen Measureformeln. Durchsuchen Sie ganz einfach alle Measureformeln.

Tabellen
  • Anzeigen der obersten 100 Zeilen erstellt eine Abfrage mithilfe von SELECTCOLUMNS() zum Anzeigen der obersten 100 Zeilen der Tabelle. Die Spalten werden in jeder Zeile aufgelistet, um eine einfache Änderung durch Kommentieren von Zeilen zu ermöglichen. Eine ORDER BY-Sortierreihenfolge ist ebenfalls enthalten, um Ihre Sortierreihenfolge anzugeben.

    Screenshot of the show top 100 rows.

  • Mit Spaltenstatistiken wird eine Abfrage erstellt, die statistische Informationen für jede Spalte in ihrer Tabelle anzeigt. Es werden viele Formeln zum Aggregieren von Spalten angezeigt (z. B. MIN, MAX, AVERAGE und COUNT).

  • Die Option Alle Measures in dieser Tabelle definieren erstellt eine Abfrage mit den in einer Abfrage enthaltenen Measureformeln dieser Tabelle.

Spalten
  • Mit der Datenvorschau wird eine Abfrage mit DISTINCT() erstellt, um die Werte einer Spalte anzuzeigen.

    Screenshot of the show data preview.

  • Spaltenstatistiken zeigen eine Abfrage mit statistischen Informationen für diese bestimmte Spalte an. Es werden viele Formeln zum Aggregieren von Spalten angezeigt (z. B. MIN, MAX, AVERAGE und COUNT). Die zurückgegebene Abfrage variiert je nach Datentyp der Spalte und zeigt unterschiedliche Statistiken für numerische, Text- und Datumsspalten an.

    Screenshot of the show column preview.

Measures
  • Auswerten erstellt eine Abfrage, um das Ergebnis des Measures anzuzeigen. SUMMARIZECOLUMNS() wird verwendet, damit Sie eine beliebige Gruppe nach Spalten hinzufügen können, um das Measure nach bestimmten Gruppen wie Land, Produkt usw. anzuzeigen.

    Screenshot of evaluate measure.

  • Die Option Definieren und auswerten erstellt eine Abfrage, um das Ergebnis des Measures anzuzeigen und die Measureformel in einer DEFINE-Anweisung anzuzeigen, die dann geändert werden kann.

    Screenshot of the define and evaluate measure.

  • Die Option Mit Verweisen definieren und auswerten erstellt eine Abfrage, um das Ergebnis des Measures anzuzeigen und nicht nur die Measureformel in einer DEFINE-Anweisung anzuzeigen, die geändert werden kann, sondern auch alle anderen Measures, auf die in der Measureformel verwiesen wird. Bearbeiten Sie einen beliebigen Teil im vollständigen Kontext des Measures.

    Screenshot of define with references and evaluate.

Abrufen visueller DAX-Abfragen aus Performance Analyzer

Visuelle Elemente in der Berichtsansicht rufen Daten aus dem Modell ab, indem Sie eine DAX-Abfrage erstellen. Die visuelle Abfrage kann mithilfe von Performance Analyzer in der DAX-Abfrageansicht angezeigt werden. Performance Analyzer kann Ihnen einen Einblick geben, warum ein visueller Wert möglicherweise einen unerwarteten Wert anzeigt oder einfach als Möglichkeit, eine Abfrage schnell zu starten, die Sie weiter ändern können.

Wechseln Sie in Berichtsansicht zum Menüband Optimieren und klicken Sie dann auf Performance Analyzer. Klicken Sie auf Aufzeichnung starten und Visuals aktualisieren. Erweitern Sie in der folgenden Tabelle ein visuelles Element, um Optionen zum Kopieren oder Ausführen von Abfragen in der DAX-Abfrageansicht anzuzeigen. Wenn Sie in der DAX-Abfrageansicht auf Ausführen klicken, wird die visuelle Abfrage als neue Registerkarte „Abfrage“ in der DAX-Abfrageansicht hinzugefügt und anschließend ausgeführt.

Screenshot of the visual DAX queries in Performance Analyzer feature.

Überlegungen und Einschränkungen

Die DAX-Abfrageansicht befindet sich derzeit in der Vorschau. Berücksichtigen Sie Folgendes:

  • Modell aktualisieren: Durch das Überschreiben des Measures „CodeLens“ werden Kommentare in der DAX-Formel entfernt.
  • Updatemodell: Das Überschreiben von Measures „CodeLens“ wird nicht nur mit Formatierungsänderungen angezeigt.
  • Updatemodell: Das Überschreiben von Measures „CodeLens“ kann zusätzliche Zeilen enthalten, wenn ein Syntaxfehler auftritt.
  • 500+ Zeilen im DAX-Abfrage-Editor erzeugen beim Eingeben spürbare Verzögerungen.
  • Schnellaktionen für Measures werden nur angezeigt, wenn sich keine DEFINE-Anweisung auf der Registerkarte „Abfrage“ befindet.
  • Abfrageumbrüche formatieren RANKX-Funktion.
  • Befehlspalette zeigt Befehle an, die noch nicht funktionieren.
  • Abfrageregisterkarten lassen das Verschieben noch nicht zu.
  • Das Ergebnisraster zeigt noch keine Spalten und Measures mit angegebenem Format an, z. B. „Währung“, „Ganze Zahl mit Tausendern“ usw.
  • Eine heruntergeladene Version dieser Datei vom Power BI-Dienst enthält nicht die im veröffentlichten Semantikmodell gespeicherten DAX-Abfragen.
  • Das Einrichten der anfänglichen Git-Integration aus dem Arbeitsbereich umfasst keine DAX-Abfragen, die im veröffentlichten Semantikmodell gespeichert wurden. Weitere Informationen finden Sie in der Fabric Git-Integration.

Und es gibt einige Einschränkungen, die Sie beachten sollten:

  • Maximal 15 MB Daten pro Abfrage. Sobald 15 MB überschritten ist, wird die aktuelle Zeile abgeschlossen, es werden jedoch keine weiteren Zeilen mehr geschrieben.
  • Maximal 1.000.000 Werte pro Abfrage. Wenn Sie 20 Spalten abfragen, können Sie maximal 50.000 Zeilen abrufen (1 Million dividiert durch 20).
  • Wenn mehr als 500 Measures vorhanden sind, sind nicht alle Measures in dieser Tabelle oder diesem Modell verfügbar.