Bei Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

Diese Schnellstartanleitung ist für Benutzer, die mit Power Pivot in Excel oder in einem tabellarischen Modell SQL Server Data Tools. Es soll Ihnen eine schnelle und einfache Einführung in die Verwendung von Data Analysis Expressions (DAX) zur Lösung einer Reihe einfacher Datenmodellierungs- und Analyseprobleme geben. Dieses Thema enthält konzeptionelle Informationen, eine Reihe von Aufgaben, die Sie ausführen können, und einige Tests, um das Gelernte zu testen. Nach Abschluss dieses Themas sollten Sie über gute Kenntnisse der grundlegenden Konzepte in DAX verfügen.

Was ist DAX?

DAX ist eine Sammlung von Funktionen, Operatoren und Konstanten, die in einer Formel oder einem Ausdruck verwendet werden können, um mindestens einen Wert berechnen oder zurückgeben zu können. Einfach ausgedrückt, erleichtert DAX die Gewinnung neuer Informationen aus den bereits im Modell vorhandenen Daten.

Warum ist DAX so wichtig?

Es ist relativ einfach, eine Arbeitsmappe zu erstellen und eine Handvoll Daten zu importieren. Sie kommen auch ohne DAX-Formeln aus, solange Sie PivotTables oder PivotCharts zur Darstellung wichtiger Informationen erstellen. Was ist jedoch, wenn Sie wichtige Vertriebsdaten für mehrere Produktkategorien analysieren müssen, die sich auf unterschiedliche Datumsbereiche beziehen? Oder stellen Sie sich vor, Sie müssen wichtige Bestandsdaten aus mehreren Tabellen zusammenführen, die sich in verschiedenen Datenquellen befinden. DAX-Formeln setzen genau hier an und bieten darüber hinaus eine Vielzahl weiterer wichtiger Funktionen. Durch den effektiven Einsatz von DAX-Formeln sind Sie in der Lage, Ihre Daten optimal auszuschöpfen. Indem Sie die richtigen Informationen zur Hand haben, können Sie sich konkreten Geschäftsanforderungen widmen, die sich auf das Unternehmensergebnis auswirken. Das ist der Sinn und Zweck von Business Intelligence, und DAX hilft Ihnen, Ihre Ziele zu erreichen.

Voraussetzungen

Möglicherweise sind Sie bereits mit dem Erstellen von Formeln in Microsoft Excel vertraut. Obwohl diese Kenntnisse Ihnen das Verständnis von DAX erleichtern, sind aber auch Neueinsteiger, die noch nicht mit Excel-Formeln gearbeitet haben, nach diesem Schnellstart in der Lage, erste DAX-Formeln zu erstellen und praktische BI-Aufgabenstellungen auf Anhieb zu lösen.

Wir konzentrieren uns auf das Verständnis der DAX-Formeln, die in Berechnungen verwendet werden. Sie sollten bereits mit den Grundlegenden Konzepten sowohl von berechneten Spalten als auch mit Measures (auch als berechnete Felder bezeichnet) vertraut sein, die beide in der Power Pivot werden. Außerdem sollten Sie sich mit der Erstellungsumgebung und den Tools von Power Pivot in Excel auskennen.

Beispielarbeitsmappe

Am einfachsten gelingt der Einstieg in DAX, indem Sie einige grundlegende Formeln erstellen, diese anhand "echter" Daten testen und das Ergebnis dann überprüfen. Die Beispiele und Aufgaben in diesem Lernprogramm basieren auf der Arbeitsmappe "Contoso Sample DAX Formulas.xlsx". Sie können die Arbeitsmappe von "http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409" herunterladen. Sobald Sie die Arbeitsmappe auf den Computer heruntergeladen haben, öffnen Sie erst die Arbeitsmappe und dann das Power Pivot-Fenster.

Los geht's!

Wir betrachten DAX unter drei grundlegenden Blickwinkeln: Syntax, Funktionen und Kontext. Natürlich gibt es andere wichtige Konzepte, aber das Verständnis dieser drei Bereiche bildet die beste Grundlage zum Erwerb solider Kenntnisse in DAX.

Syntax

Vor dem Erstellen eigener Formeln werfen wir einen Blick auf die DAX-Formelsyntax. Die Syntax umfasst die verschiedenen Elemente, aus denen eine Formel besteht; einfacher gesagt, zeigt sie uns, wie die Formel geschrieben wird. Nehmen wir als Beispiel eine einfache DAX-Formel, durch die neue Daten (Werte) für jede Zeile in der berechneten Spalte "Margin" der Tabelle "FactSales" erstellt werden: (der Formeltext ist lediglich zur Veranschaulichung farblich markiert)

Formel für eine berechnete Spalte

Die Formelsyntax umfasst die folgenden Elemente:

  1. Der Gleichheitszeichenoperator (=) gibt den Anfang der Formel an, und wenn diese Formel berechnet wird, gibt sie ein Ergebnis oder einen Wert zurück. Alle Formeln, die einen Wert berechnen, beginnen mit einem Gleichheitszeichen.

  2. Die Spalte "[SalesAmount]", auf die verwiesen wird, enthält die Werte, von denen subtrahiert wird. Ein Spaltenverweis in einer Formel steht immer in eckigen Klammern []. Im Unterschied zu Excel-Formeln, die auf eine Zelle verweisen, verweist eine DAX-Formel immer auf eine Spalte.

  3. Der mathematische Subtraktionsoperator (-).

  4. Die Spalte "[TotalCost]", auf die verwiesen wird, enthält die Werte, die von Werten in der Spalte "[SalesAmount]" subtrahiert werden sollen.

Das Lesen einer DAX-Formel fällt häufig leichter, wenn Sie die einzelnen Elemente in eine weniger abstrakte Alltagssprache übertragen, in der sich die Sachverhalte einfach ausdrücken lassen. Sie können diese Formel z. B. wie folgt lesen:

Berechne (=) in der Tabelle FactSales für jede Zeile in der berechneten Spalte "Margin" einen Wert, indem Werte in der Spalte [TotalCost] von Werten in der Spalte [SalesAmount] subtrahiert (–) werden.

Werfen wir einen Blick auf eine andere Art von Formel, die in einem Measure verwendet wird:

Formel für ein berechnetes Feld

Diese Formel umfasst die folgenden Syntaxelemente:

  1. Der Measurename Summe Sales Amount. Formeln für Measures können den Namen des Measures, gefolgt von einem Doppelpunkt, gefolgt von der Berechnungsformel enthalten.

  2. Der Gleichheitszeichenoperator gibt (=) den Anfang der Berechnungsformel an. Nach der Berechnung gibt er ein Ergebnis zurück.

  3. Mithilfe der SUM-Funktion werden alle Zahlen in der Spalte "[SalesAmount]" addiert. Sie erfahren später mehr über Funktionen.

  4. Ein oder mehrere Argumente in runden Klammern (). Alle Funktionen erfordern mindestens ein Argument. Ein Argument übergibt einen Wert an eine Funktion.

  5. Die Tabelle "FactSales", auf die verwiesen wird.

  6. Die Spalte "[SalesAmount]", auf die verwiesen wird, in der Tabelle "FactSales". Dieses Argument teilt der SUM-Funktion mit, für welche Spalte eine Summe aggregiert werden soll.

Sie können diese Formel wie folgt lesen:

Berechnen Sie für das Measure "Sum of Sales Amount" (=)die SUMME von Werten in der Spalte [SalesAmount] in der Tabelle FactSales.

Wenn dieses Measure in der Dropdownzone Werte in einer PivotTable-Feldliste platziert wird, berechnet und gibt es Werte zurück, die von jeder Zelle in der PivotTable definiert wurden, z. B. Mobiltelefone in den USA.

Verglichen mit der Formel, die für die berechnete Spalte Margin verwendet wurde, weist diese Formel einige Unterschiede auf. Im Besonderen wurde die Funktion SUMME eingeführt. Funktionen sind vorgeschriebene Formeln, die komplexe Berechnungen und Manipulationen mit Zahlen, Datums- und Uhrzeitangaben, Text und vielem mehr vereinfachen. Sie erfahren später mehr über Funktionen.

Im Unterschied zur oben behandelten berechneten Spalte Margin werden Sie feststellen, dass die Tabelle FactSales, der die Spalte angehört, der Spalte [SalesAmount] vorangestellt ist. In diesem Zusammenhang wird von einem vollqualifizierten Spaltennamen gesprochen, da er den Spaltennamen mit vorangestelltem Tabellennamen enthält. Bei Spalten, auf die in derselben Tabelle verwiesen wird, muss der Tabellenname nicht in der Formel enthalten sein. So sind lange Formeln, die auf zahlreiche Spalten verweisen, häufig kürzer und besser lesbar. Es wird jedoch geübt, immer den Tabellennamen in die Measureformeln zu verwenden, auch wenn sie sich in derselben Tabelle befindet.

Hinweis: Wenn der Name einer Tabelle Leerzeichen, reservierte Schlüsselwörter oder unzulässige Zeichen enthält, müssen Sie den Tabellennamen in einfache Anführungszeichen setzen. Sie müssen auch Tabellennamen in Anführungszeichen einschließen, wenn der Name Zeichen außerhalb des alphanumerischen ANSI-Zeichenbereichs enthält, unabhängig davon, ob das Gebietsschema den Zeichensatz unterstützt.

Es ist sehr wichtig, dass die Formeln die richtige Syntax aufweisen. Wenn die Syntax nicht richtig ist, wird in den meisten Fällen ein Syntaxfehler zurückgegeben. In anderen Fällen ist die Syntax möglicherweise richtig, aber die zurückgegebenen Werte entsprechen nicht dem, was Sie erwarten. Power Pivot (und SQL Server Data Tools) schließen IntelliSense ein; das ist eine Funktion zum Erstellen syntaktisch korrekter Formeln, die die Auswahl der richtigen Elemente unterstützt.

Als Nächstes erstellen wir eine einfache Formel. Diese Aufgabe vertieft das Verständnis der Formelsyntax und zeigt, wie Ihnen die IntelliSense-Funktion in der Bearbeitungsleiste die Arbeit erleichtert.

Aufgabe: Erstellen einer einfachen Formel für eine berechnete Spalte

  1. Wenn Sie sich noch nicht im fenster Power Pivot, klicken Sie in Excel Menüband Power Pivot Menüband auf Power PivotFenster.

  2. Klicken Sie im Power Pivot-Fenster auf die Tabelle (Registerkarte) FactSales.

  3. Scrollen Sie zur äußerst rechten Spalte, und klicken Sie dann in der Spaltenüberschrift auf Spalte hinzufügen.

  4. Klicken Sie oben im Modell-Designer-Fenster auf die Bearbeitungsleiste.

    Power Pivot-Bearbeitungsleiste

    Der Cursor wird jetzt in der Bearbeitungsleiste angezeigt. In die Bearbeitungsleiste können Sie eine Formel für eine berechnete Spalte oder ein berechnetes Feld eingeben.

    Als Nächstes erläutern wir die drei Schaltflächen links von der Bearbeitungsleiste.

    Formula bar

    Wenn der Cursor in der Bearbeitungsleiste aktiv ist, sind auch diese drei Schaltflächen aktiviert. Die äußerst linke Schaltfläche, das X, entspricht der normalen Schaltfläche "Abbrechen". Fahren Sie fort, indem Sie auf diese Schaltfläche klicken. Der Cursor wird nicht mehr in der Bearbeitungsleiste angezeigt, und auch die Schaltfläche "Abbrechen" und die Schaltfläche mit dem Häkchen sind nicht mehr zu sehen. Klicken Sie erneut auf die Bearbeitungsleiste. Die Schaltfläche "Abbrechen" und die Schaltfläche mit dem Häkchen werden wieder angezeigt. Das bedeutet, dass Sie mit der Eingabe einer Formel beginnen können.

    Die Schaltfläche mit dem Häkchen entspricht der Schaltfläche "Formel überprüfen". Sie gewinnt erst an Bedeutung, nachdem Sie eine Formel eingegeben haben. In Kürze werden wir darauf zurückkommen.

    Klicken Sie auf die Schaltfläche Fx. Ein neues Dialogfeld wird angezeigt. das Dialogfeld "Funktion einfügen". Das Dialogfeld "Funktion einfügen" ist die einfachste Möglichkeit, mit der Eingabe einer DAX-Formel zu beginnen. Wir fügen einer Formel eine Funktion hinzu, wenn wir ein Measure etwas später erstellen, aber vorerst müssen Sie Ihrer Formel für berechnete Spalten keine Funktion hinzufügen. Schließen Sie das Dialogfeld Funktion einfügen.

  5. Geben Sie in der Bearbeitungsleiste ein Gleichheitszeichen (=) gefolgt von einer öffnenden eckigen Klammer ([) ein. Sie sehen ein kleines Fenster, das alle Spalten der Tabelle "FactSales" enthält. Das ist IntelliSense in Aktion.

    Da berechnete Spalten immer in der aktiven Tabelle erstellt werden, in der Sie sich gerade befinden, ist es nicht erforderlich, dem Spaltennamen den Tabellennamen voranzustellen. Fahren Sie fort, indem Sie nach unten scrollen, und doppelklicken Sie auf [SalesQuantity]. Sie können auch bis zum gewünschten Spaltennamen scrollen und TAB drücken.

    Der Cursor ist jetzt rechts von [SalesQuantity] aktiv.

  6. Geben Sie ein Leerzeichen gefolgt von einem Subtraktionsoperator (Minuszeichen) und dann ein weiteres Leerzeichen ein.

  7. Anschließend geben Sie eine weitere öffnende eckige Klammer ([) ein. Dieses Mal wählen Sie die Spalte [ReturnQuantity] aus und drücken dann die EINGABETASTE.

    Wenn ein Fehler angezeigt wird, überprüfen Sie sorgfältig die Syntax. Vergleichen Sie sie bei Bedarf mit der Formel in der zuvor beschriebenen berechneten Spalte Margin.

    Nachdem Sie die Formel durch Drücken der EINGABETASTE abgeschlossen haben, wird die Angabe Wird berechnet in der Statusleiste unten im Power Pivot-Fenster angezeigt. Die Berechnung geht rasch voran, obwohl Sie gerade im Begriff sind, neue Werte für mehr als drei Millionen Zeilen zu berechnen.

  8. Klicken Sie mit der rechten Maustaste auf den Spaltenheader, und benennen Sie die Spalte in "NetSales" um.

Fertig! Sie haben gerade eine einfache, aber sehr leistungsstarke DAX-Formel erstellt. Durch die NetSales-Formel wird für jede Zeile in der Tabelle FactSales ein Wert berechnet, indem der Wert in der Spalte [ReturnQuantity] vom Wert in der Spalte [SalesQuantity] subtrahiert wird. Beachten Sie die Formulierung “Für jede Zeile”. Diese Formulierung haben wir im Vorgriff auf einen weiteren, sehr wichtigen DAX-Begriff gewählt, den Zeilenkontext. Sie erfahren später mehr über den Zeilenkontext.

Wenn Sie einen Operator in eine DAX-Formel eingeben, gilt dem Datentyp in den verwendeten Argumenten ein besonderes Augenmerk. Wenn Sie z. B. die Formel "= 1 & 2" eingeben, entspricht der zurückgegebene Wert dem Textwert "12". Das liegt daran, dass der Operator für das kaufmännische Und-Zeichen (&) eigentlich zur Textverkettung verwendet ist. DAX interpretiert diese Formel wie folgt: Berechne ein Ergebnis, in dem der Wert 1 als Text verwendet und der Wert 2 als Text hinzuaddiert wird. Wenn Sie jedoch "= 1 + 2" eingeben, liest DAX die Formel wie folgt: Berechne ein Ergebnis, in dem der numerische Wert 1 verwendet und der numerische Wert 2 hinzuaddiert wird. Das Ergebnis entspricht natürlich dem numerischen Wert "3". DAX berechnet resultierende Werte abhängig von dem in der Formel verwendeten Operator und nicht auf Grundlage des Datentyps, den die im Argument verwendeten Spalten aufweisen. Datentypen in DAX sind sehr wichtig, gehen jedoch über den Inhalt dieses Schnellstart-Lernprogramms hinaus. Weitere Informationen über Datentypen und Operatoren in DAX-Formeln finden Sie in der DAX-Referenz (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x407) in der Onlinedokumentation.

Probieren wir ein weiteres Beispiel. Dieses Mal erstellen Sie ein Measure, indem Sie die Formel eingeben und eine IntelliSense. Machen Sie sich keine Sorgen, wenn Sie die Formel nicht gänzlich verstehen. Sie sollen in erster Linie lernen, wie Sie mehrere Elemente mit der richtigen Syntax in einer Formel zusammenbringen.

Aufgabe: Erstellen einer Measureformel

  1. Klicken Sie in der Tabelle FactSales auf eine beliebige leere Zelle im Berechnungsbereich. Dabei handelt es sich um den Bereich mit leeren Zellen, der sich unterhalb einer Tabelle im Power Pivot-Fenster befindet.

Power Pivot-Berechnungsbereich

  1. Geben Sie in der Bearbeitungsleiste den Namen "Previous Quarter Sales" ein.

  2. Geben Sie ein Gleichheitszeichen (=) ein, um mit der Eingabe der Berechnungsformel zu beginnen.

  3. Geben Sie als erste Buchstaben CAL ein, und doppelklicken Sie dann auf die gewünschte Funktion. In dieser Formel verwenden Sie die Funktion CALCULATE.

  4. Geben Sie eine öffnende runde Klammer ein, um mit der Eingabe der an die CALCULATE-Funktion zu übergebenden Argumente zu beginnen.

    Nachdem Sie die öffnende runde Klammer eingegeben haben, zeigt IntelliSense die für die CALCULATE-Funktion erforderlichen Argumente an. In Kürze erfahren Sie mehr über Argumente.

  5. Geben Sie die ersten Buchstaben der Tabelle "FactSales" ein, und doppelklicken Sie dann in der Dropdownliste auf FactSales[Sales].

  6. Geben Sie ein Komma (,) ein, um den ersten Filter anzugeben, und geben Sie dann PRE ein. Anschließend doppelklicken Sie auf die Funktion PREVIOUSQUARTER.

    Nach Auswahl der PREVIOUSQUARTER-Funktion wird eine weitere öffnende runde Klammer angezeigt. Dies weist darauf hin, dass ein weiteres Argument erforderlich ist, und zwar für die PREVIOUSQUARTER-Funktion.

  7. Geben Sie die ersten Buchstaben "Dim" ein, und doppelklicken Sie dann auf DimDate[DateKey].

  8. Schließen Sie sowohl das an die PREVIOUSQUARTER-Funktion übergebene Argument als auch die CALCULATE-Funktion ab, indem Sie zwei schließende runde Klammern )) eingeben.

    Die Formel sollte jetzt wie folgt aussehen:

    Previous Quarter Sales:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  9. Klicken Sie auf die Schaltfläche "Formel überprüfen" auf der Bearbeitungsleiste, um die Formel zu überprüfen. Wenn ein Fehler zurückgegeben wird, überprüfen Sie jedes Syntaxelement.

Sie haben es geschafft! Sie haben gerade ein Measure mithilfe von DAX erstellt, kein einfaches Maß dafür. Abhängig von den in einer PivotTable oder einem PivotChart angewendeten Filtern berechnet diese Formel den Gesamtumsatz des vorangehenden Quartals.

Sie haben gerade einige wichtige Aspekte von DAX-Formeln vorgestellt. Zunächst enthielt diese Formel zwei Funktionen. Beachten Sie, dass die PREVIOUSQUARTER-Funktion als Argument geschachtelt ist, das an die CALCULATE-Funktion übergeben wird. DAX-Formeln können bis zu 64 geschachtelte Funktionen enthalten. Es ist unwahrscheinlich, dass eine Formel jemals so viele geschachtelte Funktionen enthalten würde. Tatsächlich wäre eine solche Formel sehr schwierig zu erstellen und zu debuggen, und sie wäre wahrscheinlich auch nicht sehr schnell.

Weiter wurden in dieser Formel auch Filter verwendet. Mithilfe von Filtern grenzen Sie ein, was Sie berechnen möchten. In diesem Fall haben Sie einen Filter als Argument ausgewählt, das genau genommen einer anderen Funktion entspricht. Sie werden zu einem späteren Zeitpunkt mehr über Filter erfahren.

Schließlich haben Sie die CALCULATE-Funktion verwendet. Dies ist eine der leistungsstärksten Funktionen in DAX. Wenn Sie später Datenmodelle und komplexere Formeln erstellen, wird diese Funktion aller Voraussicht nach häufiger zum Einsatz kommen. Die Erläuterung der CALCULATE-Funktion geht über den Rahmen dieses Schnellstart-Lernprogramms hinaus, mit zunehmenden Kenntnissen über DAX, gewinnt diese Funktion jedoch an Bedeutung.

Hinweis: Um die Zeitintelligenzfunktionen in DAX-Formeln zu verwenden, müssen Sie normalerweise eine eindeutige Datumstabelle angeben, indem Sie das Dialogfeld "Als Datumstabelle markieren" verwenden. In der Arbeitsmappe "Contoso DAX Formula Samples.xlsx" ist die Spalte "DateKey" in der Tabelle "DimDate" als eindeutige Datumsspalte ausgewählt.

Bonusaufgabe

Vielleicht fragen Sie sich, welches die einfachste DAX-Formel ist, die Sie erstellen können. Die Antwort lautet: "Immer die Formel, die Sie nicht erstellen müssen". Und genau das ist genau das, was Sie tun können, indem Sie eine Standardaggregationsfunktion in einem Measure verwenden. In fast jedem Datenmodell müssen aggregierte Daten gefiltert und berechnet werden. Beispielsweise wird die FUNKTION SUMME im zuvor gesehenen Measure "Summe Sales Amount" verwendet, um alle Zahlen in einer bestimmten Spalte zu addieren. DAX bietet weitere Funktionen zum Aggregieren von Werten. Sie können Formeln automatisch mithilfe von Standardaggregationen erstellen, indem Sie die AutoSumme-Funktion verwenden.

Zusätzliche Kreditaufgabe: Erstellen einer Measureformel mithilfe der AutoSumme-Funktion

  1. Scrollen Sie in der Tabelle "FactSales" zur "Spalte ReturnQuantity", und klicken Sie dann auf die Spaltenüberschrift, um die ganze Spalte auszuwählen.

  2. Klicken Sie auf der Registerkarte Start im Menüband in der Gruppe Berechnungen auf die Schaltfläche AutoSumme.

AutoSumme in Power Pivot

Klicken Sie auf den Abwärtspfeil neben AutoSumme,und klicken Sie dann auf Mittelwert (beachten Sie die anderen Standardaggregationsfunktionen, die Sie ebenfalls verwenden können).

Sofort wird ein neues Measure mit dem Namen Average of ReturnQuantity: gefolgt von der Formel =AVERAGE([ReturnQuantity]) erstellt.

War das nicht einfach? Natürlich sind nicht alle Formeln derart einfach zu erstellen. Mithilfe der AutoSumme-Funktion können Sie jedoch schnell und einfach Formeln mithilfe von Standardaggregationen erstellen.

Das sollte Ihnen die in DAX-Formeln verwendete Syntax ein gutes Stück näher gebracht haben. Sie haben auch einige ziemlich nützliche Funktionen wie IntelliSense und AutoSumme kennen gelernt, die Sie beim Erstellen schneller, einfacher und präziser Formeln unterstützen. Natürlich gibt es einiges Wissenswertes mehr über die Syntax zu erfahren. Weitere hilfreiche Informationen finden Sie in der DAX-Referenz oder in der SQL-Onlinedokumentation.

QuickQuiz zur Syntax

  1. Wie funktioniert diese Schaltfläche in der Formelleiste?
    Funktionsschaltfläche

  2. Wovon ist ein Spaltenname in einer DAX-Formel immer umgeben?

  3. Wie würden Sie eine Formel für Folgendes schreiben: Berechnen Sie in der Tabelle
    "DimProduct"für jede Zeile in der berechneten Spalte UnitMargin einen Wert, indem Sie Werte in der Spalte "UnitCost" von Werten in der Spalte "UnitPrice" subtrahieren?

Die Antworten finden Sie am Ende dieses Themas.

Funktionen

Funktionen sind vordefinierte Formeln, die Berechnungen mit bestimmten Werten, so genannten Argumenten, in einer bestimmten Reihenfolge oder Struktur durchführen. Argumente können andere Funktionen, eine andere Formel, Spaltenbezüge, Zahlen, Text, Wahrheitswerte wie WAHR oder FALSCH oder Konstanten sein.

DAX umfasst die folgenden Kategorien von Funktionen: Datum und Uhrzeit, Informationen, logische, mathematische, statistische, Text- und Zeitintelligenzfunktionen. Wenn Sie mit Funktionen in Excel Formeln vertraut sind, sehen viele der FUNKTIONEN in DAX ähnlich wie Sie aus. DAX-Funktionen sind jedoch auf folgende Arten eindeutig:

  • Eine DAX-Funktion verweist immer auf eine vollständige Spalte oder eine Tabelle. Wenn Sie nur bestimmte Werte aus einer Tabelle oder Spalte verwenden möchten, können Sie der Formel Filter hinzufügen.

  • Zum Anpassen von Berechnungen auf Zeilenbasis stellt DAX Funktionen bereit, mit denen Sie – ähnlich einem Argument – den aktuellen Zeilenwert oder einen verknüpften Wert verwenden können, um Berechnungen durchzuführen, die sich je nach Kontext unterscheiden. Sie erfahren später mehr über den Kontext.

  • DAX enthält viele Funktionen, die keinen Wert, sondern eine Tabelle zurückgeben. Die Tabelle wird nicht angezeigt, sondern als Eingabe für andere Funktionen bereitgestellt. Sie können z. B. eine Tabelle abrufen und dann die unterschiedlichen Werte darin zählen oder dynamische Summen von gefilterten Tabellen oder Spalten berechnen.

  • Zu den DAX-Funktionen zählen auch verschiedene Zeitintelligenzfunktionen. Mit diesen Funktionen können Sie Datumsbereiche definieren oder auswählen und dynamische Berechnungen durchführen. So können Sie z. B. Summen über parallele Zeiträume vergleichen.

Manchmal ist es schwierig zu wissen, welche Funktionen Sie in einer Formel verwenden müssen. Power Pivot und der tabellarische Modell-Designer in SQL Server Data Tools enthalten das Feature "Funktion einfügen", ein Dialogfeld, das Sie beim Auswählen von Funktionen nach Kategorie unterstützt und kurze Beschreibungen zu den einzelnen Funktionen bietet.

Funktion einfügen

Als Nächstes erstellen wir eine neue Formel, die eine Funktion umfasst, die Sie über "Funktion einfügen" auswählen:

Aufgabe: Hinzufügen einer Funktion zu einer Formel mithilfe von "Funktion einfügen"

  1. Scrollen Sie in der Tabelle FactSales zur spalte ganz rechts, und klicken Sie dann in der Spaltenüberschrift auf Spalte hinzufügen.

  2. Geben Sie in der Bearbeitungsleiste ein Gleichheitszeichen (=) ein.

  3. Klicken Sie auf die Schaltfläche Funktion einfügen. Funktion einfügen Öffnet das Dialogfeld Funktion einfügen.

  4. Klicken Sie im Dialogfeld Funktion einfügen auf das Listenfeld Kategorie auswählen. Standardmäßig ist Alle ausgewählt, und alle Funktionen in der Kategorie Alle sind darunter aufgeführt. Da viele Funktionen angezeigt werden, möchten Sie sie vielleicht filtern, um den gewünschten Funktionstyp einfacher zu finden.

  5. Für diese Formel möchten Sie einige Daten zurückgeben, die bereits in einer anderen Tabelle vorhanden sind. Dazu verwenden Sie eine Funktion in der Kategorie Filter. Klicken Sie auf die Kategorie Filter, und scrollen Sie dann in Funktion auswählennach unten, und doppelklicken Sie auf die RELATED-Funktion. Klicken Sie auf OK, um das Dialogfeld Funktion einfügen zu schließen.

  6. Verwenden Sie IntelliSense, um die Spalte "DimChannel[ChannelName]" zu suchen und auszuwählen.

  7. Schließen Sie die Formel, und drücken Sie dann die EINGABETASTE.

  8. Nachdem Sie die Formel durch Drücken der EINGABETASTE abgeschlossen haben, wird die Angabe Wird berechnet in der Statusleiste unten im Power Pivot-Fenster angezeigt. Jetzt sehen Sie, dass Sie gerade eine neue Spalte in der Tabelle "FactSales" erstellt haben, die Kanalinformationen aus der Tabelle "DimChannel" enthält.

  9. Benennen Sie die Spalte "Channel" um.

    Die Formel sollte wie folgt aussehen: "= RELATED (DimChannel[ChannelName])"

Sie haben gerade eine weitere sehr wichtige DAX-Funktion, die RELATED-Funktion, eingeführt. Die RELATED-Funktion gibt Werte aus einer anderen Tabelle zurück. Sie können die RELATED-Funktion verwenden, wenn eine Beziehung zwischen der Tabelle, in der Sie sich gerade befinden, und der Tabelle besteht, aus der Daten abgerufen werden sollen. Die RELATED-Funktion eröffnet Ihnen natürlich enorme Möglichkeiten. In diesem Fall können Sie jetzt für jede Verkaufstransaktion in der Tabelle "FactSales" den Vertriebskanal einbeziehen. Sie können jetzt die Tabelle "DimChannel" aus der PivotTable-Feldliste ausblenden, um die Navigation zu vereinfachen und nur die wichtigsten Informationen anzuzeigen, die Sie wirklich benötigen. Ähnlich wie die oben beschriebene CALCULATE-Funktion ist die RELATED-Funktion sehr wichtig und wird sicherlich häufig zum Einsatz kommen.

Wie Sie sehen können, erstellen Sie mithilfe von DAX-Funktionen äußerst effiziente Formeln. Die Grundlagen von Funktionen wurde bisher nur am Rande besprochen. Mit zunehmender Erfahrung im Umgang mit DAX werden Sie Formeln unter Verwendung vieler unterschiedlicher Funktionen erstellen. Eine der besten Informationen zu allen DAX-Funktionen finden Sie in der DAX-Referenz (Data Analysis Expressions).

QuickQuiz zu Funktionen

  1. Worauf verweist eine Funktion immer?

  2. Kann eine Formel mehr als eine Funktion enthalten?

  3. Welche Kategorie von Funktionen verwenden Sie, um zwei Textzeichenfolgen in einer Zeichenfolge zu verketten?

Die Antworten finden Sie am Ende dieses Themas.

Kontext

Der Kontext ist eines der wichtigsten DAX-Konzepte. Es gibt zwei Kontexttypen in DAX: den Zeilenkontext und den Filterkontext. Zunächst befassen wir uns mit dem Zeilenkontext.

Zeilenkontext

Den Zeilenkontext können Sie sich als die aktuelle Zeile vorstellen. Erinnern Sie sich an die berechnete Spalte "Margin", die im Rahmen der Erläuterungen zur Syntax am Anfang des Lernprogramms erwähnt wurde? Mit der Formel "= [SalesAmount] - [TotalCost]" wird für jede Zeile in der Tabelle ein Wert in der Spalte "Margin" berechnet. Werte für jede Zeile werden auf der Grundlage von Werten in zwei anderen Spalten berechnet: "[SalesAmount]" und "[TotalCost]" in derselben Zeile. DAX ist in der Lage, die Werte für jede Zeile in der Spalte "Margin" zu berechnen, da der Kontext bekannt ist: Für jede Zeile werden Werte in der Spalte "[TotalCost]" verwendet und von Werten in der Spalte "[SalesAmount]" subtrahiert.

In der unten dargestellten ausgewählten Zelle wurde der Wert $49.54 in der aktuellen Zeile berechnet, indem der Wert $51.54 in der Spalte "[TotalCost]" vom Wert $101.08 in der Spalte "[SalesAmount]" subtrahiert wird.

Zeilenkontext in Power Pivot

Der Zeilenkontext gilt nicht nur für berechnete Spalten. Er gilt auch, wenn eine Formel über eine Funktion verfügt, durch die Filter zum Identifizieren einer einzelnen Tabellenzeile angewendet werden. Durch die Funktion wird grundsätzlich ein Zeilenkontext für jede Zeile der Tabelle angewendet, die gefiltert wird. Diese Art des Zeilenkontexts bezieht sich am häufigsten auf Measures.

Filterkontext

Der Filterkontext ist etwas schwieriger zu verstehen als der Zeilenkontext. Sie können sich den Filterkontext am besten wie folgt vor stellen: Ein oder mehrere Filter, die in einer Berechnung angewendet werden, die ein Ergebnis oder einen Wert bestimmt.

Der Filterkontext tritt nicht an die Stelle des Zeilenkontexts, sondern wird zusätzlich zum Zeilenkontext verwendet. Um die in einer Berechnung zu berücksichtigenden Werte weiter einzugrenzen, können Sie z. B. einen Filterkontext anwenden, durch den nicht nur der Zeilenkontext, sondern auch ein bestimmter Wert (Filter) innerhalb dieses Zeilenkontexts angegeben wird.

Der Filterkontext ist in PivotTables leicht zu sehen. Wenn Sie beispielsweise TotalCost zum Bereich Werte hinzufügen und dann Jahr und Region zur Zeile oder Spalte hinzufügen, definieren Sie einen Filterkontext, der eine Teilmenge der Daten basierend auf einem bestimmten Jahr und einer bestimmten Region auswählt.

Warum ist der Filterkontext für DAX so wichtig? Da sich der Filterkontext am besten durch Hinzufügen von Spalten- und Zeilenbeschriftungen und Datenschnitten in einer PivotTable anwenden lässt, kann der Filterkontext auch in einer DAX-Formel angewendet werden, indem ein Filter mithilfe von Funktionen wie ALL, RELATED, FILTER, CALCULATE, nach Beziehungen sowie durch andere Measures und Spalten definiert wird. Sehen wir uns beispielsweise die folgende Formel in einem Measure namens "LadenVerkauf" an:

Formel

Diese Formel ist eindeutig komplexer als andere bereits besprochene Formeln. Um diese Formel besser zu verstehen, können wir sie jedoch – wie zuvor bereits andere Formeln – zerlegen.

Diese Formel umfasst die folgenden Syntaxelemente:

  1. Der Measurename "StoreSales", gefolgt von einem Doppelpunkt :.

  2. Den Gleichheitszeichenoperator (=), der den Anfang der Formel angibt.

  3. Die CALCULATE-Funktion, die einen Ausdruck als Argument in einem Kontext auswertet, der von den angegebenen Filtern geändert wird.

  4. Ein oder mehrere Argumente in runden Klammern ().

  5. Ein Measure [Sales] in derselben Tabelle wie ein Ausdruck. Das Measure "Sales" enthält die Formel =SUM(FactSales[SalesAmount]).

  6. Die einzelnen Filter werden durch ein Komma (,) getrennt.

  7. Die Spalte, auf die verwiesen wird, und der Wert "DimChannel[ChannelName] =”Store”" als Filter.

Mit dieser Formel wird sichergestellt, dass nur Umsatzwerte, die durch das Measure Sales als Filter definiert sind, nur für Zeilen in der Spalte DimChannel[ChannelName] berechnet werden, die den Wert "Store" als Filter enthalten.

Wie Sie sich vorstellen können, hat das Definieren des Filterkontexts innerhalb einer Formel ein enormes Potenzial. Beispielsweise durch die Fähigkeit, nur auf einen konkreten Wert in einer verknüpften Tabelle zu verweisen. Machen Sie sich keine Sorgen, wenn Sie die Erläuterungen zum Kontext nicht auf Anhieb ganz verstanden haben. Während Sie eigene Formeln erstellen, werden Sie den Begriff "Kontext" und dessen enorme Bedeutung für DAX besser verstehen lernen.

QuickQuiz zu Kontexten

  1. Welche beiden Kontexttypen gibt es?

  2. Was ist der Filterkontext?

  3. Was ist der Zeilenkontext?

Die Antworten finden Sie am Ende dieses Themas.

Zusammenfassung

Nachdem Sie nun über ein grundlegendes Verständnis der wichtigsten Konzepte in DAX verfügen, können Sie damit beginnen, eigene DAX-Formeln für berechnete Spalten und Measures zu erstellen. DAX kann tatsächlich ein wenig kompliziert sein, Ihnen stehen jedoch viele Hilfsressourcen zur Verfügung. Nachdem Sie dieses Thema einige Male durchgelesen und einige eigene Formeln ausprobiert haben, können Sie weitere DAX-Konzepte und Formeln kennen lernen, die Ihnen bei der Lösung eigener Geschäftsanforderungen behilflich sind. Zahlreiche DAX-Ressourcen wie die Power Pivot-Hilfe, die SQL Server-Onlinedokumentation, Whitepapers und Blogs (sowohl von Microsoft als auch von anderen BI-Experten) stehen Ihnen zur Verfügung. Es empfiehlt sich, mit dem DAX-Ressourcencenter-Wiki (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) zu beginnen. Die DAX-Referenz (Data Analysis Expressions) ist ebenfalls eine großartige Ressource. Fügen Sie diese Ressourcen Ihren Favoriten hinzu.

Das Whitepaper "DAX in the BI Tabular Model" steht zum Download bereit (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x407) und gewährt Ihnen fundiertere Einblicke in die hier eingeführten Konzepte sowie in viele andere erweiterte Konzepte und Formeln. Dieses Whitepaper basiert ebenfalls auf der Arbeitsmappe "Contoso DAX Sample Formulas.xlsx", die Sie bereits heruntergeladen haben.

QuickQuiz-Antworten

Syntax:

  1. Öffnet die Funktion "Funktion einfügen"

  2. Eckige Klammern []

  3. "=[UnitPrice] - [UnitCost]"

Funktionen:

  1. Eine Tabelle und eine Spalte

  2. Ja. Eine Formel kann bis zu 64 geschachtelte Funktionen enthalten.

  3. Textfunktionen.

Kontext:

  1. Zeilenkontext und Filterkontext

  2. Ein oder mehrere Filter in einer Berechnung, durch die ein einzelner Wert ermittelt wird.

  3. Die aktuelle Zeile

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?
Wenn Sie auf "Absenden" klicken, wird Ihr Feedback zur Verbesserung von Produkten und Diensten von Microsoft verwendet. Ihr IT-Administrator kann diese Daten sammeln. Datenschutzbestimmungen.

Vielen Dank für Ihr Feedback!

×