Szybki start: Nauka podstaw języka DAX w 30 minut

Uwaga:  Staramy się udostępniać najnowszą zawartość Pomocy w Twoim języku tak szybko, jak to możliwe. Ta strona została przetłumaczona automatycznie i może zawierać błędy gramatyczne lub nieścisłości. Chcemy, aby ta zawartość była dla Ciebie przydatna. Prosimy o powiadomienie nas, czy te informacje były pomocne, u dołu tej strony. Oto angielskojęzyczny artykuł do wglądu.

Ten przewodnik Szybki start jest przeznaczony dla użytkowników, którzy nie znają dodatku Power Pivot w programie Excel ani nie tworzyli projektów modeli tabelarycznych w programie SQL Server Data Tools. Ma on pełnić funkcję rolę szybkiego i prostego wprowadzenia do używania języka DAX (Data Analysis Expressions) w celu rozwiązywania wielu podstawowych problemów z zakresu modelowania danych i analityki. Ten temat zawiera informacje koncepcyjne, serię zadań do wykonania oraz kilka kwizów umożliwiających sprawdzenie postępów w nauce. Przerobienie tego tematu gwarantuje dobrą znajomość większości podstawowych koncepcji języka DAX.

Co to jest język DAX?

Język DAX to kolekcja funkcji, operatorów i stałych, których można używać w formule lub wyrażeniu w celu obliczania i zwracania co najmniej jednej wartości. Mówiąc prościej, język DAX pomaga tworzyć nowe informacje na podstawie danych, które są już dostępne w modelu.

Dlaczego język DAX jest tak ważny?

Bardzo łatwo można utworzyć skoroszyt i zaimportować do niego dane. Bez użycia formuł języka DAX można nawet tworzyć tabele przestawne i wykresy przestawne, w których będą wyświetlane ważne informacje. Ale co zrobić w sytuacji, gdy trzeba przeanalizować najważniejsze dane dotyczące sprzedaży w kilku kategoriach produktów dla różnych zakresów dat? Albo jeśli trzeba połączyć ważne dane magazynowe z kilku tabel, które znajdują się w różnych źródłach danych? Formuły języka DAX oferują tę możliwość, a ponadto oferują wiele innych ważnych możliwości. Nauczenie się tworzenia efektywnych formuł języka DAX pomoże w jak najlepszym wykorzystaniu używanych danych. Po uzyskaniu potrzebnych informacji można zacząć rozwiązywać prawdziwe problemy biznesowe, które wpływają na wyniki firmy. Jest to analiza biznesowa, a język DAX pomaga w jej prowadzeniu.

Wymagania wstępne

Prawdopodobnie użytkownik umie już tworzyć formuły w programie Microsoft Excel. Ta wiedza będzie pomagać w zrozumieniu zasady działania języka DAX, ale nawet w przypadku braku doświadczenia w tworzeniu formuł programu Excel koncepcje opisane w tym temacie pomogą zacząć tworzyć formuły języka DAX i rozwiązywać prawdziwe problemy biznesowe.

Firma Microsoft mają fokusu szczegółowe informacje dotyczące opis formuł języka DAX używanych w obliczeniach. Należy już znanych z podstawowych koncepcji kolumn obliczeniowych i miar (nazywane także pola obliczeniowe), są one opisane w Power Pivot pomocy. Należy również zapoznać z Power Pivot w programie Excel do tworzenia środowiska i narzędzi.

Przykładowy skoroszyt

Najlepszą metodą nauczenia się korzystania z języka DAX jest utworzenie kilku podstawowych formuł, użycie ich wraz z rzeczywistymi danymi i obejrzenie uzyskanych wyników. W przykładach i zadaniach opisanych w tym temacie jest używany skoroszyt Contoso Sample DAX Formulas.xlsx. Ten skoroszyt można pobrać pod adresem http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Po pobraniu skoroszytu na komputer należy go otworzyć, a następnie otworzyć okno dodatku Power Pivot.

Zaczynamy!

Firma Microsoft będzie ramka DAX trzy ważne podstawowych koncepcji: składni, funkcji i kontekst. Oczywiście istnieje innych ważnych pojęć w języku DAX, ale opis pojęć związanych z tych trzech zapewni najlepszą podstawę, na której można utworzyć swoje umiejętności języka DAX.

Składnia

Przed utworzeniem własnych formuł warto przyjrzeć się składni formuł języka DAX. Składnia obejmuje różne elementy tworzące formułę. Mówiąc prościej, określa sposób pisania formuły. Na przykład przyjrzyjmy się prostej formule języka DAX służącej do tworzenia nowych danych (wartości) dla każdego wiersza w kolumnie obliczeniowej o nazwie Margin w tabeli FactSales (kolory tekstu formuły są używane tylko w celach ilustracyjnych):

Formuła kolumny obliczeniowej

Składnia tej formuły zawiera następujące elementy:

  1. Operator znaku równości (=) wskazuje początek formuły, a gdy formuła zostanie obliczona, zwróci wynik (wartość). Wszystkie formuły obliczające wartość będą rozpoczynać się od znaku równości.

  2. Kolumna, której dotyczy odwołanie ([SalesAmount]), zawiera wartości, od których będą odejmowane inne wartości. Odwołanie do kolumny w formule zawsze jest ujęte w nawiasy kwadratowe „[]”. W przeciwieństwie do formuł programu Excel, które odwołują się do komórki, formuły języka DAX zawsze odwołują się do kolumny.

  3. Matematyczny operator odejmowania (-).

  4. Kolumna, której dotyczy odwołanie ([TotalCost]), zawiera wartości, które będą odejmowane od wartości w kolumnie [SalesAmount].

Podczas próby zrozumienia, jak należy czytać formułę języka DAX, często pomocne jest przełożenie jej elementów na język, którego używa się na co dzień. Na przykład tę formułę można przeczytać w sposób następujący:

w FactSales tabeli, dla każdego wiersza kolumny obliczeniowej Margin Oblicz (=) wartość, odejmując (-) wartości w [ KosztCałkowity ] wartości w kolumnie [ KwotaSprzedaży ] kolumny.

Spójrzmy na inny typ formuł, z których jedna jest używana w miarę:

Formuła kolumny obliczeniowej

Składnia tej formuły zawiera następujące elementy:

  1. Nazwa miary Suma Sales Amount. Formuł dla miar mogą zawierać Nazwa miary, której następuje dwukropek, a po nim formułę obliczeń.

  2. Operator znaku równości (=) wskazuje początek formuły obliczeń. Po obliczeniu zostanie zwrócony wynik.

  3. Funkcja SUM dodaje wszystkie liczby znajdujące się w kolumnie [SalesAmount]. W dalszej części tego tematu zostanie przedstawionych więcej informacji o funkcjach.

  4. Nawias okrągły () otacza co najmniej jeden argument. Każda funkcja musi mieć co najmniej jeden argument. Argument przekazuje wartość do funkcji.

  5. Tabela, której dotyczy odwołanie — FactSales.

  6. Kolumna w tabeli FactSales, której dotyczy odwołanie — [SalesAmount]. Dzięki temu argumentowi funkcja SUM wie, która kolumna ma być agregowana za pomocą sumowania.

Tę formułę można przeczytać w sposób następujący:

Dla miary o nazwie Suma Sales Amount Oblicz (=) SUMĘ wartości w [ KwotaSprzedaży ] kolumny w FactSales Tabela.

Gdy umieszczane w strefie na liście pól tabeli przestawnej upuszczania wartości, środek ten oblicza i zwraca wartości zdefiniowanych przez każdą komórkę w tabeli przestawnej, na przykład telefony komórkowe w USA.

Zwróć uwagę, że są różne informacje o tę formułę w porównaniu z formułę użytą do kolumny obliczeniowej Margin kilka rzeczy. W szczególności wprowadzone funkcji Suma. Funkcje są zapisywane wstępnie formuły, które ułatwiają złożonych obliczeń i operacje z liczby, daty, godziny i tekst. Będzie więcej informacji o funkcjach później.

W przeciwieństwie do kolumny obliczeniowej Margin wcześniej widać, że kolumnie [SalesAmount] był wyświetlany FactSales tabeli, do której należy kolumny. Jest to określane jako w pełni kwalifikowana nazwa kolumny w tym zawiera nazwę kolumny poprzedzone nazwy tabeli. Kolumny, do których odwołuje się w tej samej tabeli nie wymaga nazwy tabeli zostaną uwzględnione w formule. Dzięki temu długiej formuły odwołujące się wiele kolumn krótsza i czytelności. Jest jednak zaleca się zawsze należy uwzględnić nazwy tabeli w formułach miary, nawet w tej samej tabeli.

Uwaga: Jeśli nazwa tabeli zawiera spacje, zastrzeżone słowa kluczowe lub niedozwolone znaki, trzeba ją ująć w apostrofy. Nazwy tabel należy też ujmować w apostrofy, jeśli zawierają znaki spoza zakresu znaków alfanumerycznych ANSI niezależnie od tego, czy ustawienia regionalne obsługują dany znak, czy nie.

Należy zwrócić szczególną uwagę, aby formuły miały poprawny kontekst. W większości przypadków niepoprawna składnia spowoduje zwrócenie błędu składniowego. Możliwe są jednak sytuacje, w których mimo poprawnej składni zwracane wartości mogą być inne niż oczekiwane. Dodatek Power Pivot (i program SQL Server Data Tools) oferuje funkcję IntelliSense, która ułatwia tworzenie poprawnych składniowo formuł, pomagając w wybieraniu poprawnych elementów.

Utwórzmy prostą formułę. To zadanie pomoże lepiej zrozumieć składnię formuły i pokaże, w jaki sposób dostępna na pasku formuły funkcja IntelliSense może pomóc użytkownikowi.

Zadanie: Tworzenie prostej formuły dla kolumny obliczeniowej

  1. Jeśli nie jesteś już w oknie Power Pivot w programie Excel na Power Pivot na wstążce kliknij pozycję Power Pivot okna.

  2. W oknie dodatku Power Pivot kliknij tabelę FactSales (karta).

  3. Przewiń do ostatniej kolumny z prawej strony, a następnie w nagłówku kolumny kliknij pozycję Dodaj kolumnę.

  4. Kliknij pasek formuły u góry okna projektanta modeli.

    Pasek formuły programu PowerPivot

    Kursor jest teraz widoczny na pasku formuły. Pasek formuły to miejsce, w którym można wpisać formułę dla kolumny obliczeniowej lub pola obliczeniowego.

    Poświęćmy chwilę czasu na przyjrzenie się trzem przyciskom po lewej stronie paska formuły.

    Pasek formuły

    Gdy kursor jest aktywny na pasku formuły, te trzy przyciski też stają się aktywne. Znajdujący się najdalej z lewej strony przycisk X to przycisk anulowania. Kliknij go. Kursor nie będzie już widoczny na pasku formuły, a przycisk anulowania i przycisk znacznika wyboru nie będą już widoczne. Kliknij ponownie pasek formuły. Przycisk anulowania i przycisk znacznika wyboru znowu będą widoczne. Oznacza to, że można zacząć wprowadzanie formuły.

    Przycisk znacznika wyboru to przycisk sprawdzania formuły. Nie ma potrzeby używania go przed wprowadzeniem formuły. Wrócimy do niego za chwilę.

    Kliknij przycisk Fx . Pojawi się, że pojawi się nowe okno dialogowe; okno dialogowe Wstawianie funkcji. Okno dialogowe Wstawianie funkcji jest najprostszym sposobem, aby rozpocząć wprowadzanie formuły języka DAX. Będziemy dodawać funkcji do formuły gdy tworzymy miara nieco później, ale teraz, nie musisz dodać funkcję do formuły kolumny obliczeniowej. Teraz, a następnie zamknij okno dialogowe Wstawianie funkcji.

  5. Na pasku formuły wpisz znak równości =, a następnie wpisz nawias otwierający [. Zostanie wyświetlone małe okno, w którym będą widoczne wszystkie kolumny z tabeli FactSales. Tak działa funkcja IntelliSense.

    Kolumny obliczeniowe zawsze są tworzone w aktywnej tabeli, więc nie ma potrzeby poprzedzania nazwy kolumny nazwą tabeli. Przewiń w dół i kliknij dwukrotnie pozycję [SalesQuantity]. Możesz także przewinąć do odpowiedniej nazwy kolumny, a następnie nacisnąć klawisz Tab.

    Kursor jest obecnie aktywny z prawej strony [kolumny SalesQuantity].

  6. Wpisz spację, a następnie wpisz operator odejmowania - (znak minus), po czym wpisz jeszcze jedną spację.

  7. Teraz wpisz inną otwierający nawias kwadratowy [. Tym razem wybierz [kolumnyReturnQuantity] , a następnie naciśnij klawisz Enter.

    Jeśli zostanie zwrócony błąd, przyjrzyj się dokładnie składni. W razie potrzeby porównaj ją z formułą w kolumnie obliczeniowej Margin, którą opisano wcześniej.

    Po naciśnięciu klawisza Enter w celu ukończenia formuły na pasku stanu u dołu okna dodatku Power Pivot zostanie wyświetlony tekst Obliczanie. Ten tekst szybko zniknie, nawet jeśli obliczano nowe wartości dla ponad trzech milionów wierszy.

  8. Kliknij prawym przyciskiem myszy nagłówek kolumny i zmień jej nazwę na NetSales.

To wszystko! Utworzono proste, ale bardzo formuły języka DAX. Dla każdego wiersza w tabeli FactSales formuła NetSales oblicza wartość, odejmując wartość w kolumnie [ReturnQuantity] od wartości w kolumnie [kolumny SalesQuantity]. Zwróć uwagę, jak firma Microsoft po prostu powiedzieć "dla każdego wiersza". Jest to obraz innej ważne pojęcia w języku DAX; kontekst wiersza. Dowiesz się więcej na temat kontekst wiersza później.

Porada: 

Coś naprawdę ważne poznać podczas wpisywania operatora w formule języka DAX jest typem danych w argumentach, którego używasz. Na przykład, gdyby wpisz następującą formułę = 1 i 2, wartość zwracana jest wartość tekstową "12". Jest tak, ponieważ jest handlowe "i" (&) operator łączenia tekstu. Język DAX zinterpretowany tę formułę do czytania: obliczyć wynik przyjmując wartość 1 jako tekst, a następnie dodaj wartość 2 jako tekst. Teraz, gdyby wpisz = 1 + 2, ta formuła jako odczytuje języka DAX: obliczyć wynik przez pobranie na wartość liczbową 1 i dodanie wartości liczbowej 2. Wynik to "3" wartość liczbową. Język DAX oblicza wynikowy wartości w zależności od operatora w formule nie oparte na typ danych kolumn używanych w argumencie. Typy danych w języku DAX są bardzo ważne, ale poza zakresem Szybki Start. Aby uzyskać więcej informacji na temat typów danych i operatorów w formułach języka DAX, zobacz informacje dotyczące języka DAX (http://go.microsoft.com/fwlink/?LinkId=239769 & clcid = 0x409) w — książki Online.

Spróbuj innej. Tym razem będzie tworzenie miary, wpisując formułę i przy użyciu technologii IntelliSense. Nie martw się zbyt dużo Jeżeli nie lepiej zrozumieć formułę. Najważniejsze w tym miejscu jest Dowiedz się, jak tworzyć formuły za pomocą kilku elementów razem w poprawnej składni.

Zadanie: Tworzenie formuły miary

  1. W tabeli FactSales kliknij dowolną pustą komórkę w obszarze obliczeń. Jest to obszar pustych komórek znajdujący się tuż pod tabelą w oknie dodatku Power Pivot.

Obszar obliczeń programu PowerPivot

  1. Na pasku formuły wpisz nazwę Previous Quarter Sales:.

  2. Wpisz znak równości =, aby rozpocząć formułę obliczeń.

  3. Wpisz pierwsze litery CAL, a następnie kliknij dwukrotnie funkcję, której chcesz użyć. W tej formule należy użyć funkcji CALCULATE.

  4. Wpisz nawias otwierający (, aby rozpocząć wpisywanie argumentów, które zostaną przekazane do funkcji CALCULATE.

    Należy zauważyć, że po wpisaniu nawiasu otwierającego funkcja IntelliSense pokazuje argumenty wymagane w funkcji CALCULATE. Informacje dotyczące argumentów zostaną przedstawione za chwilę.

  5. Wpisz pierwsze litery nazwy tabeli FactSales , a następnie na liście rozwijanej kliknij dwukrotnie pozycję FactSales[sprzedaży].

  6. Wpisz przecinek (,), aby określić pierwszy filtr, wpisz litery PRE, a następnie kliknij dwukrotnie funkcję PREVIOUSQUARTER.

    Po wybraniu funkcji PREVIOUSQUARTER zostanie wyświetlony kolejny nawias otwierający, który będzie wskazywał, że jest wymagany kolejny argument; tym razem będzie to argument funkcji PREVIOUSQUARTER.

  7. Wpisz pierwsze litery Dim, a następnie kliknij dwukrotnie pozycję tabeli Wymiardata[Kluczdaty].

  8. Zamknij oba argumenty przekazywane do funkcji PREVIOUSQUARTER i CALCULATE, wpisując dwa nawiasy zamykające )).

    Formuła powinna wyglądać podobnie do następującej:

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

  9. Kliknij przycisk sprawdzania formuły na pasku formuły, aby sprawdzić poprawność formuły. Jeśli zostanie zwrócony błąd, sprawdź każdy element składni.

Czy jest on! Miara przy użyciu języka DAX oraz łatwo jeden w tym właśnie utworzony. Ta formuła będzie do czego jest obliczyć sumę sprzedaży dla w poprzednim kwartale, w zależności od filtrów w tabeli przestawnej lub wykresu przestawnego.

Po prostu wprowadzono kilka ważnych aspektów formuł języka DAX. Najpierw ta formuła dostępne dwie funkcje. Należy zauważyć, że funkcja PREVIOUSQUARTER jest zagnieżdżona jako argument przekazane do funkcji CALCULATE . Formuły języka DAX może zawierać maksymalnie 64 zagnieżdżonych funkcji. Prawdopodobnie formuły kiedykolwiek zawiera wiele zagnieżdżonych funkcji. W rzeczywistości takiej formuły może być bardzo trudne do tworzenia i debugowania i prawdopodobnie nie być bardzo szybko albo.

W tej formule są także używane filtry. Filtry zawężają zakres obliczeń. W tym przypadku jeden filtr określono jako argument i jest on w rzeczywistości inną funkcją. W dalszej części tego tematu zostanie przedstawionych więcej informacji o filtrach.

Na końcu jest używana funkcja CALCULATE. Jest to jedna z mających największe możliwości funkcji języka DAX. Ta funkcja z pewnością będzie wielokrotnie używana podczas opracowywania modeli danych oraz tworzenia bardziej złożonych formuł. Omówienie funkcji CALCULATE wykracza poza zakres tego przewodnika Szybki start, ale wraz z nabywaniem wiedzy dotyczącej języka DAX warto zwrócić szczególną uwagę na tę funkcję.

Uwaga: Zazwyczaj, aby używać funkcji analizy czasowej w formułach języka DAX, należy określić unikatową kolumnę dat, używając okna dialogowego Oznaczanie jako tabeli dat. W skoroszycie Contoso DAX Formula Samples.xlsx unikatową kolumną dat jest kolumna DateKey w tabeli DimDate.

Dodatkowe informacje

Może być monitu o: "Co to jest najprostszym formuły języka DAX można utworzyć?" Dobrze odpowiedzi, który jest "formułę, której nie trzeba". I dokładnie to co można zrobić za pomocą funkcji standardowej agregacji w miarę. Niemal każde modelu danych musi filtrowanie i obliczanie zagregowane dane. Na przykład funkcja suma w miarę Suma Sales Amount, który został wyświetlony wcześniej umożliwia dodawanie wszystkich liczb w określonej kolumnie. Język DAX zawiera kilka funkcji agregowane także wartości. Można automatycznie utworzyć formuł za pomocą standardowej agregacji za pomocą funkcji AutoSumowanie.

Zadanie dodatkowe: Tworzenie formuły miary przy użyciu funkcji Autosumowania

  1. W tabeli FactSales przewiń do kolumny ReturnQuantity, a następnie kliknij nagłówek kolumny, aby zaznaczyć całą kolumnę.

  2. Na karcie Narzędzia główne na Wstążce w grupie obliczenia kliknij przycisk Autosumowanie.

Autosumowanie w programie PowerPivot

  1. Kliknij strzałkę w dół obok pozycji Autosumowanie, a następnie kliknij pozycję średnia (powiadomienie o standardowej agregacji funkcje możesz możesz skorzystać, zbyt).
    Od razu, utworzenia nowej miary o nazwie średnia z ReturnQuantity: obserwowane przez formułę = AVERAGE([ReturnQuantity]).

Znowu było łatwo? Oczywiście nie wszystkie tworzone formuły będą takie proste. Ale za pomocą funkcji autosumowania można szybko i łatwo tworzyć formuły oparte na standardowych obliczeniach agregacji.

Przerobienie tego przykładu powinno dać użytkownikowi dobre zrozumienie składni używanej w formułach języka DAX. W ramach tego przykładu zamieszczono też wprowadzenie do naprawdę przydatnych funkcji, takich jak IntelliSense i AutoSumowanie, które pomagają w szybkim i prostym tworzeniu dokładnych formuł. Oczywiście istnieje jeszcze wiele informacji na temat składni, z którymi warto się zapoznać. Dobrym miejscem dalszej nauki jest witryna Język DAX — kompendium oraz dokumentacja SQL Server — książki online.

Szybki kwiz dotyczący składni

  1. Do czego służy ten przycisk na pasku formuły
    Przycisk funkcji

  2. W czym zawsze znajduje się nazwa kolumny używana w formule języka DAX?

  3. Jak można zapisać formuły dla następujących:
    w Wymiarprodukt tabeli, dla każdego wiersza w UnitMargin kolumny obliczeniowej, obliczanie wartości przez odjęcie wartości w Koszt_jednostkowy kolumny od wartości w UnitPrice kolumny?

Odpowiedzi znajdują się na końcu tematu.

Funkcje

Funkcje to wstępnie zdefiniowane formuły umożliwiające przeprowadzanie obliczeń z użyciem określonych wartości, nazywanych argumentami, które mają określony porządek lub strukturę. Argumentami mogą być inne funkcje, inna formuła, odwołania do kolumn, liczby, tekst, wartości logiczne, takie jak PRAWDA lub FAŁSZ, oraz stałe.

Język DAX zawiera następujące kategorie funkcji: daty i godziny, informacji, logiczne, matematyczną, statystyczne, tekstu i funkcje analizy czasowej. Użytkownicy zaznajomieni z funkcjami w formułach programu Excel, wiele funkcji w języku DAX zostaną wyświetlone informacje podobne Jednak funkcje języka DAX są unikatowe w następujący sposób:

  • Funkcja języka DAX zawsze odwołuje się do pełnej kolumny lub tabeli. Aby użyć tylko określonych wartości z tabeli lub kolumny, do formuły można dodać filtry.

  • Jeśli zachodzi potrzeba dostosowania obliczeń wiersz po wierszu, język DAX oferuje funkcje, które umożliwiają używanie bieżącej wartości wiersza lub wartości powiązanej jako argumentu w celu wykonywania obliczeń zmieniających się zależnie od kontekstu. W dalszej części tego tematu zostanie przedstawionych więcej informacji o kontekście.

  • Język DAX zawiera wiele funkcji, które zwracają tabelę, a nie wartość. Ta tabela nie jest wyświetlana, ale służy do dostarczania danych wejściowych do innych funkcji. Na przykład można pobrać tabelę, a następnie zliczyć znajdujące się w niej unikatowe wartości, albo obliczyć dynamiczne sumy w filtrowanych tabelach lub kolumnach.

  • Język DAX obejmuje różne funkcje analizy czasowej. Te funkcje umożliwiają definiowanie lub wybierz zakres dat i wykonywać obliczenia dynamicznego na ich podstawie. Na przykład możesz porównać sum w równoległych okresów.

Czasami trudno jest wiedzieć, które funkcje konieczne może być użyte w formule. Power Pivot i Projektant modelu tabelarycznego w SQL Server Data Tools, zawierają okna dialogowego Wstawianie funkcji, okno dialogowe, które pozwala wybrać funkcje według kategorii, a także krótkie opisy poszczególnych funkcji.

Wstawianie funkcji

Utwórzmy nową formułę zawierającą funkcję, która zostanie wybrana przy użyciu okna dialogowego Wstawianie funkcji:

Zadanie: Dodawanie funkcji do formuły przy użyciu Wstawianie funkcji

  1. W tabeli FactSales przewiń do ostatniej kolumny z prawej strony, a następnie w nagłówku kolumny kliknij pozycję Dodaj kolumnę.

  2. Na pasku formuły wpisz znak równości, =.

  3. Kliknij przycisk Wstaw funkcję. Wstaw funkcję Spowoduje to otwarcie okna dialogowego Wstawianie funkcji.

  4. W oknie dialogowym Wstawianie funkcji kliknij przycisk Wybierz pola listy kategorii. Domyślnie wszystkie jest zaznaczone, a wszystkie funkcje w wszystkich kategorii są wymienione poniżej. To jest wiele funkcji, więc należy funkcje ułatwiające Znajdź typ funkcji, których szukasz filtru.

  5. Tej formuły, które użytkownik chce powrócić pewne dane, które już istnieje w innej tabeli. Do tego przechodzą w kategorii Filtruj przy użyciu funkcji. Zrealizuj i kliknij kategorię filtru w wybierz odpowiednią funkcję, przewiń w dół i kliknij dwukrotnie funkcję pokrewnych. Kliknij przycisk Ok, aby zamknąć okno dialogowe Wstawianie funkcji.

  6. Korzystać z technologii IntelliSense, aby ułatwić znajdowanie i wybierz kolumnę DimChannel [ChannelName].

  7. Zamknij formułę, a następnie naciśnij klawisz Enter.

  8. Po naciśnięciu klawisza Enter, aby zakończyć edycję formuły na pasku stanu u dołu okna Power Pivot pojawi się wyraz obliczanie. Zostanie wyświetlone właśnie utworzony nowej kolumny w tabeli FactSales na podstawie informacji kanału z tabeli DimChannel.

  9. Zmień nazwę kolumny na Channel.

    Formuła powinna wyglądać następująco: =RELATED(DimChannel[ChannelName])

Po prostu wprowadzono do innej bardzo ważnych funkcji w języku DAX, funkcja powiązane . POKREWNA funkcja zwraca wartości z innej tabeli. Możesz użyć powiązane, pod warunkiem, że relacji między tabeli, do której aktualnie się i tabelę zawierającą wartości, które chcesz pobrać. POKREWNA funkcja musi oczywiście możliwości olbrzymi. W takim przypadku możesz teraz umieścić kanału sprzedaży dla każdej sprzedaży w tabeli FactSales. Możesz teraz ukryć tabeli DimChannel z listy pól tabeli przestawnej łatwiejsza do nawigacji i wyświetlić tylko najważniejsze informacje, które są naprawdę potrzebne. Podobnie jak funkcja CALCULATE opisanych wcześniej funkcja RELATED jest ważne i prawdopodobnie użyjesz go wielokrotnie.

Jak widać, funkcje w języku DAX ułatwia tworzenie formuł bardzo zaawansowanym. Firma Microsoft naprawdę tylko dotknięciu na podstawie funkcji. Jak poprawić swoje umiejętności języka DAX, należy utworzyć formuły przy użyciu wielu różnych funkcji. Jeden z najlepszych źródeł szczegółowe informacje o wszystkich funkcji w języku DAX jest Odwołanie Data Analysis Expressions (DAX).

Szybki kwiz dotyczący funkcji

  1. Do czego zawsze odwołuje się funkcja?

  2. Czy formuła może zawierać więcej niż jedną funkcję?

  3. Jakiej kategorii funkcji należy użyć, aby połączyć dwa ciągi tekstowe w jeden ciąg?

Odpowiedzi znajdują się na końcu tematu.

Kontekst

Kontekst jest jednym z najważniejszych pojęcia języka DAX zapoznać się z. Istnieją dwa typy kontekstu w języku DAX; kontekst wiersza i kontekst filtru. Firma Microsoft najpierw będzie wyglądać w kontekście wiersza.

Kontekst wiersza

Kontekst wiersza najprościej jest traktować jako bieżący wiersz. Jako przykładu użyjemy kolumny obliczeniowej Margin, którą opisano w sekcji z informacjami dotyczącymi składni. Formuła „=[SalesAmount] - [TotalCost]” oblicza wartość w kolumnie Margin dla każdego wiersza w tabeli. Wartości dla każdego wiersza są obliczane na podstawie wartości z dwóch innych kolumn ([SalesAmount] i [TotalCost]) znajdujących się w tym samym wierszu. Język DAX może obliczać wartości dla każdego wiersza w kolumnie Margin, ponieważ ma kontekst: dla każdego wiersza pobiera wartość z kolumny [TotalCost] i odejmuje ją od wartości z kolumny [SalesAmount].

W widocznej poniżej zaznaczonej komórce wartość 49,54 USD w bieżącym wierszu została obliczona przez odjęcie wartości 51,54 USD z kolumny [TotalCost] od wartości 101,08 USD z kolumny [SalesAmount].

Kontekst wiersza w programie PowerPivot

Kontekst wiersza, po prostu nie dotyczy kolumn obliczeniowych. Kontekst wiersza dotyczy również zawsze, gdy formuła zawiera funkcję, która ma zastosowanie filtrów w celu identyfikowania jednego wiersza w tabeli. Funkcja założenia zostaną zastosowane kontekst wiersza dla każdego wiersza tabeli, w którym jest filtrowanie. Kontekst wiersza na tego typu najczęściej dotyczy miary.

Kontekst filtru

Kontekst filtru jest nieco trudniejszy do zrozumienia niż kontekst wiersza. Najprościej jest wyobrazić sobie kontekst filtru w następujący sposób: co najmniej jeden filtr zastosowany w obliczeniu, które ustala wynik lub wartość.

Kontekst filtru nie zastępuje kontekstu wiersza, ale raczej jest stosowany jako dodatek do kontekstu wiersza. Na przykład aby jeszcze bardziej zawęzić wartości, które będą używane w obliczeniu, można zastosować kontekst filtru, który nie tylko określa kontekst wiersza, ale także określa tylko daną wartość (filtr) w tym kontekście wiersza.

Kontekst filtru jest dobrze widoczny w tabelach przestawnych. Na przykład dodanie kolumny TotalCost do obszaru Wartości, a następnie kolumn Year i Region do obszaru Wiersze lub Kolumny powoduje zdefiniowanie kontekstu filtru, który wybiera podzestaw danych na podstawie podanych wartości Year i Region.

Kontekst filtru jest tak ważny do języka DAX Ponieważ podczas najłatwiej można stosować kontekst filtru, dodając kolumny i etykiety wierszy i fragmentatorów w tabeli przestawnej, kontekst filtru mogą być również stosowane w formule języka DAX, definiując filtru przy użyciu funkcji, takich jak wszystkie powiązane, filtr, OBLICZ relacjami, i przez inne miary i kolumny. Na przykład Przyjrzyjmy się następującej formuły w miarę o nazwie StoreSales:

Formuła

Przede wszystkim ta formuła jest bardziej skomplikowana niż formuły dotychczas przedstawione w tym przewodniku. Aby jednak lepiej zrozumieć jej działanie, można ją podzielić, tak jak robiliśmy w przypadku innych formuł.

Składnia tej formuły zawiera następujące elementy:

  1. Nazwa miary StoreSales, której następuje dwukropek:.

  2. Operator znak równości (=) wskazuje na początek formuły.

  3. Funkcja CALCULATE oblicza wyrażenie jako argument, a w kontekście zmodyfikowanym przez określone filtry.

  4. Nawias okrągły () otaczający co najmniej jeden argument.

  5. Miara [Sales] w tej samej tabeli jako wyrażenia. Miary sprzedaży zawiera formułę: = SUM(FactSales[SalesAmount]).

  6. Przecinek (,) rozdzielający filtry.

  7. Kolumna odwołania i określona wartość DimChannel [ChannelName] = "Store" jako filtr.

Ta formuła będziesz mieć pewność, że tylko sprzedaży wartości, zdefiniowanych przez miary sprzedaży, jako filtr, są obliczane tylko dla wierszy w kolumnie DimChannel [ChannelName] z wartością "Store" jako filtr.

Łatwo sobie wyobrazić, że możliwość zdefiniowania kontekstu filtru w obrębie formuły daje wielkie możliwości. Możliwość odwoływania się tylko do określonej wartości w powiązanej tabeli to tylko jeden z przykładów. Jeśli w tej chwili kontekst nie jest w pełni zrozumiały, nie należy się tym przejmować. Tworzenie własnych formuł umożliwi lepsze zrozumienie istoty kontekstu i pokaże, dlaczego jest on tak ważny w języku DAX.

Szybki kwiz dotyczący kontekstu

  1. Jakie dwa typy kontekstu istnieją?

  2. Co to jest kontekst filtru?

  3. Co to jest kontekst wiersza?

Odpowiedzi znajdują się na końcu tematu.

Podsumowanie

Teraz, gdy masz już podstawy najważniejszych pojęć w języku DAX, możesz przystąpić do tworzenia formuł języka DAX dla kolumny obliczeniowe i miary własne. Język DAX istotnie może być nieco kłopotliwe dowiedzieć się, ale jest dostępnych wiele zasobów. Po czytania za pośrednictwem w tym temacie kilka razy, a eksperymentowanie z kilkoma własne formuły, Dowiedz się więcej o innych pojęcia języka DAX i formuł, które mogą ułatwić rozwiązywanie problemów własne firm. Wiele zasobów języka DAX są dostępne w Power Pivot pomocy, SQL Server książki Online, oficjalne dokumenty i blogi przez firmę Microsoft i wiodące specjalistów BI. Wiki Centrum zasobów języka DAX (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) to doskonałe miejsce do rozpoczęcia. Odwołanie Data Analysis Expressions (DAX) jest również doskonałe zasobów. Pamiętaj zapisać go na liście ulubionych.

Oficjalny dokument „Język DAX w modelu tabelarycznym analizy biznesowej” (dostępny do pobrania pod adresem http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x415) zawiera szczegółowy przegląd koncepcji wprowadzonych w tym dokumencie oraz wiele informacji na temat innych zaawansowanych koncepcji i formuł. W treści tego oficjalnego dokumentu znajdują się odwołania do skoroszytu Contoso DAX Sample Formulas.xlsx, który użytkownik pobrał podczas przerabiania tego przewodnika.

Szybki kwiz dotyczący odpowiedzi

Składnia:

  1. Otwiera funkcję Wstawianie funkcji.

  2. Nawiasy kwadratowe [].

  3. = [CenaJednostkowa] - [UnitCost]

Funkcje:

  1. Tabela i kolumna.

  2. Tak. Formuła może zawierać do 64 zagnieżdżonych funkcji.

  3. Funkcje tekstowe.

Kontekst:

  1. Kontekst wiersza i kontekst filtru.

  2. Co najmniej jeden filtr w obliczeniu ustalającym pojedynczą wartość.

  3. Bieżący wiersz.

Rozwijaj umiejętności związane z pakietem Office
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×