Rozpocznij od języka DAX w usłudze Power BI



Ten blog Edureka ułatwia rozpoczęcie pracy z podstawami Power BI DAX lub wyrażeniami analizy danych, jeśli dopiero zaczynasz korzystać z usługi Power BI, przedstawiając składnię i przykłady.

Ten blog jest zasadniczo przeznaczony dla nowych użytkowników i ma na celu zapewnienie szybkiego i łatwego przejścia przez język formuł zwany Wyrażenia analizy danych (DAX) .Jeśli znasz funkcje w MS Excel lub , wiele formuł w tym Podstawy Power BI DAX artykuł będzie podobny do Ciebie.

Powiedziawszy to, oto pojęcia, które stanowią integralną część wszystkiego , po nauczeniu się, które powinieneś mieć dobre zrozumienie najbardziej podstawowych pojęć języka DAX.





Podstawy Power BI DAX: co to jest język DAX?

Zacznijmy więc od podstaw Power BI DAX, dobrze?

Tworzenie raportów za pomocą programu Power BI Desktop jest dość łatwe, które od razu przedstawiają cenne informacje.



Ale co, jeśli musisz przeanalizować procent wzrostu we wszystkich kategoriach produktów, dla wszystkich różnych zakresów dat? A może musisz obliczyć roczny wzrost swojej firmy w porównaniu z gigantami rynkowymi?

Nauka języka DAX pomoże Ci w pełni wykorzystać możliwości i rozwiązuj rzeczywiste problemy biznesowe.

Język DAX składa się z funkcji, operatorów i stałych, które można umieścić w postaci formuł w celu obliczenia wartości przy użyciu danych już obecnych w modelu.



Power BI DAX zawiera bibliotekę ponad 200 funkcji, operatorów i konstrukcji. Jego biblioteka zapewnia ogromną elastyczność w tworzeniu miar do obliczania wyników dla niemal każdej potrzeby analizy danych.

Podstawy Power BI DAX: jak to działa?

Przede wszystkim pozwól mi wyjaśnić, jak to działa.W większości będziemy opierać nasze rozumienie Power BI DAX wokół trzech podstawowych pojęć: Składnia , Kontekst , i Funkcje .

Oczywiście są tu inne ważne koncepcje, ale zrozumienie tych trzech zapewni najlepszą podstawę, na której będziesz budować swoje umiejętności.

Składnia

Plik Składnia składa się z różnych elementów składających się na formułę i sposobu jej zapisania. Look przy tej prostej formule języka DAX.

Podczas próby zrozumienia formuły języka DAX często pomocne jest rozbicie każdego z elementów na język, który myślisz i którym mówisz na co dzień. Tak więc ta formuła zawiera następujące elementy składni:

Składnia - Power BI DAX - Edureka

JA. Całkowita sprzedaż to nazwa miary.

II. Plik operator znaku równości (=) wskazuje początek formuły.

III. SUMA sumuje wszystkie liczby w kolumnie, Sprzedaż [SalesAmount] .

IV. Są takie zdanie wtrącone () otaczające wyrażenie zawierające co najmniej jeden argument. Wszystkie funkcje wymagają co najmniej jednego argumentu.

V. Obroty to tabela, do której się odwołuje

MY. Na argument przekazuje wartość do funkcji. Kolumna, do której się odwołuje [Suma sprzedaży] jest argumentem, za pomocą którego funkcja SUMA zna kolumnę, w której ma zagregować SUMA.

Mówiąc najprościej, możesz to przeczytać jako: ' W przypadku miary o nazwie Total Sales obliczyć (=) SUMĘ wartości w kolumnie [SalesAmount] w tabeli Sales ”.

&pikEdytor Power BI DAX zawiera funkcję sugestii, która pomaga tworzyć poprawne składniowo formuły, sugerując odpowiednie elementy.

Kontekst

Kontekst jest jedną z najważniejszych koncepcji języka DAX. Kiedy mówi się o kontekście, może to odnosić się do jednego z dwóch typów Kontekst wiersza i Kontekst filtru .

Używany głównie, gdy mowa o Środki , the Kontekst wiersza jest najłatwiejszy do pomyślenia jako bieżący wiersz. Ma zastosowanie zawsze, gdy formuła ma funkcję stosującą filtry w celu zidentyfikowania pojedynczego wiersza w tabeli.

Kontekst filtru jest trochę trudniejszy do zrozumienia niż kontekst wiersza. Najłatwiej można sobie wyobrazić kontekst filtru jako jeden lub więcej filtrów zastosowanych w obliczeniach. PlikKontekst filtru nie istnieje zamiast tego w kontekście wiersza. Raczej dotyczy to pierwszego. Spójrz na następującą formułę języka DAX.

Ta formuła zawiera następujące elementy składni:

JA. Nazwa miary Sprzedaż w sklepie .

II. Plik operator znaku równości (=) wskazuje początek formuły.

III. Plik OBLICZ funkcja oblicza wyrażenie jako argument.

IV. Nawias () otoczyć wyrażenie zawierające jeden lub więcej argumentów.

V. Miara [Całkowita sprzedaż] w tej samej tabeli co wyrażenie.

MY. DO przecinek (,) oddziela pierwszy argument wyrażenia od argumentu filtru.

IDZIESZ. W pełni kwalifikowana kolumna odniesienia, Kanał [ChannelName] to nasz kontekst wiersza. Każdy wiersz w tej kolumnie określa kanał, Sklep, Online itd.

VIII. Szczególna wartość, Sklep jest używany jako filtr. To jest nasz kontekst filtra.

Ta formuła zapewnia że miara łącznej sprzedaży jest obliczana tylko dla wierszy w kolumnie Channel [ChannelName] z wartością „Store” jako filtrem.

Funkcje

Funkcje są predefiniowanymi, ustrukturyzowanymi i uporządkowanymi formułami. Wykonują obliczenia za pomocą argumenty przekazane im. Te argumenty mogą być liczbami, tekstem, wartościami logicznymi lub innymi funkcjami.

Podstawy Power BI DAX: Obliczone kolumny i miary

Na tym blogu skupimy się na formułach Power BI DAX używanych w obliczeniach w Środki i Kolumny obliczone .

Kolumny obliczone

Tworząc model danych w programie Power BI Desktop, możesz rozszerzyć tabelę, tworząc nowe kolumny. Zawartość kolumn jest definiowana przez wyrażenie języka DAX oceniane wiersz po wierszu lub w kontekście bieżącego wiersza w tej tabeli.

Jednak w modelach danych dla języka DAX wszystkie kolumny obliczeniowe zajmują miejsce w pamięci i są obliczane podczas przetwarzania tabeli.

Takie zachowanie jest pomocne w zapewnianiu lepszych wrażeń użytkownika, ale wykorzystuje cenną pamięć RAM, a zatem jest złym nawykiem w produkcji, ponieważ każde pośrednie obliczenie jest przechowywane w pamięci RAM i marnuje cenną przestrzeń.

Środki

Istnieje inny sposób definiowania obliczeń w modelu języka DAX, przydatny w przypadku, gdy trzeba operować na wartościach zagregowanych, a nie na wierszach. Te obliczenia są miarami. Jednym z wymagań języka DAX jest zdefiniowanie miary w tabeli. Jednak środek tak naprawdę nie należy do tabeli. Można więc przenosić miarę z jednej tabeli do drugiej bez utraty jej funkcjonalności.

Kolumny obliczone a miary

Miary i kolumny obliczeniowe używają wyrażeń języka DAX. Różnica polega na kontekście ewaluacji. Miara jest oceniana w kontekście komórki ocenianej w raporcie lub w zapytaniu języka DAX, podczas gdy kolumna obliczeniowa jest obliczana na poziomie wiersza w tabeli, do której należy.

Nawet jeśli wyglądają podobnie, istnieje duża różnica między kolumnami obliczeniowymi a miarami. Wartość kolumny obliczeniowej jest obliczana podczas odświeżania danych i używa bieżącego wiersza jako kontekstu, który nie zależy od interakcji użytkownika w raporcie.

W związku z tym musisz zdefiniować kolumnę obliczeniową, gdy chcesz wykonać następujące czynności

  • Umieść obliczone wyniki we fragmentatorze lub wyświetl wyniki w wierszach lub kolumnach w tabeli przestawnej (w przeciwieństwie do obszaru wartości) lub na osiach wykresu albo użyj wyniku jako warunku filtru w zapytaniu języka DAX.
  • Zdefiniuj wyrażenie, które jest ściśle powiązane z bieżącym wierszem. Na przykład Cena * Ilość nie może działać na średniej ani na sumie dwóch kolumn.
  • Kategoryzuj tekst lub liczby. Na przykład zakres wartości dla miary.

Miara działa na agregacjach danych zdefiniowanych przez bieżący kontekst, który zależy od filtru zastosowanego w raporcie - takiego jak fragmentator, wiersze i kolumny w tabeli przestawnej lub osie i filtry zastosowane do wykresu.

Dlatego musisz zdefiniować miarę, gdy chcesz wyświetlić wynikowe wartości obliczeń, które odzwierciedlają wybory użytkownika, takie jak

  • Kiedy obliczasz procent zysku na określonym wyborze danych.
  • Podczas obliczania stosunku produktu do wszystkich produktów, ale zachowując filtr zarówno według roku, jak i regionu.

Podstawy Power BI DAX: Typy funkcji w języku DAX

1. Funkcje agregujące

MIN

Ta funkcja języka DAX rezwraca minimalną wartość liczbową w kolumnie lub między dwoma wyrażeniami skalarnymi.

Składnia

MIN()

Przykład

=MIN([ResellerMargin])

MINA

Ta funkcja języka DAX rzwraca minimalną wartość w kolumnie, w tym wszelkie wartości logiczne i liczby reprezentowane jako tekst.

Składnia

MINA()

Przykład

=MINA(([Kod pocztowy])

FIGLARKA

Ta funkcja języka DAX zwracaminimalna wartość liczbowa wynikająca z oceny wyrażenia dla każdego wiersza tabeli.

Składnia

FIGLARKA(

,)

Przykład

=FIGLARKA(FILTR(InternetSales, InternetSales [SalesTerritoryKey] =5), InternetSales [Freight] + InternetSales [TaxAmt])

MAX

Ta funkcja języka DAX rezwraca maksymalną wartość w kolumnie, w tym wszelkie wartości logiczne i liczby reprezentowane jako tekst.

Składnia

MAX()

Przykład

=MAX([ResellerMargin])

MAXA

Ta funkcja języka DAX rezwraca maksymalną wartość w kolumnie, w tym wszelkie wartości logiczne i liczby reprezentowane jako tekst.

Składnia

MAXA()

Przykład

=MAXA(([Kod pocztowy])

MAXX

Ta funkcja języka DAX zwracamaksymalna wartość liczbowa wynikająca z oceny wyrażenia dla każdego wiersza tabeli.

Składnia

MAXX(

,)

Przykład

=MAXX(FILTR(InternetSales, InternetSales [SalesTerritoryKey] =5), InternetSales [Freight] + InternetSales [TaxAmt])

SUMA

Ta funkcja języka DAX adds wszystkie liczby w kolumnie.

Składnia

SUMA()

Przykład

=SUMA(Biuro sprzedaży])

ŚREDNI

Ta funkcja języka DAX rzwraca średnią arytmetyczną wartości w kolumnie.

Składnia

ŚREDNI()

Przykład

=ŚREDNI(InternetSales [ExtendedSalesAmount])

sumx

Ta funkcja języka DAX ret zwraca sumę wyrażenia obliczonego dla każdego wiersza w tabeli.

Składnia

sumx(

,)

Przykład

=sumx(FILTR(InternetSales, InternetSales [SalesTerritoryID] =5),[Fracht])

AVERAGEX

Ta funkcja języka DAX coblicza średnią arytmetyczną zestawu wyrażeń obliczanych na podstawie tabeli.

Składnia

AVERAGEX(

,)

Przykład

=AVERAGEX(InternetSales, InternetSales [Freight] + InternetSales [TaxAmt])

2. Funkcje liczenia

DISTINCTCOUNT

Jest to funkcja języka DAX używana do zwracania odrębnej liczby elementów w kolumnie. Tak więc, jeśli istnieje wiele numerów tego samego elementu, ta funkcja policzy go jako pojedynczy element.

Składnia

DISTINCTCOUNT()

Przykład

=DISTINCTCOUNT(ResellerSales_USD [SalesOrderNumber])

LICZYĆ

To jest funkcja języka DAX używana do zwracania liczby elementów w kolumnie. Tak więc, jeśli istnieje wiele numerów tego samego elementu, ta funkcja policzy go jako oddzielne elementy, a nie jako pojedynczy element.

Składnia

LICZYĆ()

Przykłady

=LICZYĆ([Data wysyłki])

COUNTA

To jest funkcja języka DAX używana do zwracania liczby elementów w kolumnie, która nie jest pusta.

Składnia

COUNTA()

Przykład

=COUNTA(„Sprzedawca” [telefon])

COUNTROWS

To jest funkcja języka DAXzlicza wiersze w określonej tabeli lub w tabeli zdefiniowanej przez wyrażenie.

Składnia

COUNTROWS(

)

Przykład

=COUNTROWS('Zamówienia')

COUNTBLANK

To jest funkcja języka DAXliczy liczbę pustych komórek w kolumnie.

Składnia

jak przycinać w java

COUNTBLANK()

Przykład

=COUNTBLANK(Sprzedawca [nazwa banku])

3. Funkcje daty i godziny

DATA

Ta funkcja języka DAX retwraca określoną datę w formacie data-godzina.

Składnia

DATA(<rok>,<miesiąc>,<dzień>)

Przykład

=DATA(2019,1217)

GODZINA

Ta funkcja języka DAX rzwraca określoną godzinę jako liczbę od 0 do 23 (od 12:00 do 23:00).

Składnia

GODZINA()

Przykład

=GODZINA(„Zamówienia” [TransactionTime])

DZISIAJ

Ta funkcja języka DAX rzwraca aktualną datę.

Składnia

DZISIAJ()

TERAZ

Ta funkcja języka DAX retwraca bieżącą datę i godzinę w formacie Data-Czas.

Składnia

TERAZ()

MIESIĄC

Ta funkcja języka DAX ret zwraca datę w formacie Data-Czas ostatniego dnia miesiąca, przed lub po określonej liczbie miesięcy.

Składnia

MIESIĄC(,)

Przykład

=MIESIĄC(„3 marca 2008 r.”,1.5)

4. Funkcje matematyczne

SEKCJA

Ta funkcja języka DAX rzwraca wartość bezwzględną podanej liczby.

Składnia

SEKCJA()

Przykład

=ABS ([DealerPrice] - [ListPrice])

EXP

Ta funkcja języka DAX rzwraca wartość e podniesioną do potęgi podanej liczby.

Składnia

EXP()

Przykład

= EXP ([moc])

jak ustawić ścieżkę java w windows

FAKT

Ta funkcja języka DAX rodwraca silnię liczby.

Składnia

FAKT()

Przykład

= FACT ([wartości])

LN

Ta funkcja języka DAX rzwraca logarytm naturalny podanej liczby.

Składnia

LN()

Przykład

= LN ([wartości])

LOG

Ta funkcja języka DAX rzwraca dziennik o podstawę podanej liczby.

Składnia

LOG(,)

Przykład

Wszystkie poniższe zwracają ten sam wynik, 2.

= LOG (100,10)

= LOG (100)

= LOG10 (100)

Liczba Pi

Ta funkcja języka DAX rzwraca wartość Pi.

Składnia

Liczba Pi()

MOC

Ta funkcja języka DAX ret zwraca wartość pierwszego podniesionego argumentu do potęgi drugiego argumentu.

Składnia

MOC(,<moc>)

Przykład

= POTĘGA (5,2)

ILORAZ

Ta funkcja języka DAX wykonuje dzielenie ret zwraca część całkowitą ilorazu.

Składnia

ILORAZ(,)

Przykład

= QUOTIENT (5,2)

ZNAK

Ta funkcja języka DAX zwraca znak podanej liczby.

Składnia

ZNAK()

Przykład

= SIGN (([cena sprzedaży] - [cena kosztowa]))

SQRT

Ta funkcja języka DAX rzwraca pierwiastek kwadratowy z podanej liczby.

Składnia

SQRT()

Przykład

= SQRT (25)

5. Funkcje logiczne

I

Ta funkcja języka DAX wykonuje logiczne AND (koniunkcja) na dwóch wyrażeniach. Aby AND zwrócił prawdę, oba podane warunki muszą być spełnione.

Składnia

I(,)

Przykład

= JEŻELI (ORAZ (10>9, -10 <-jeden),'Wszystko prawda',„Co najmniej jeden fałsz”

Ponieważ oba warunki przekazane jako argumenty do funkcji AND są prawdziwe, formuła zwraca „All True”.

LUB

Ta funkcja języka DAX wykonuje logiczne LUB (rozłączenie) na dwóch wyrażeniach. Aby OR zwrócił prawdę, musi być spełniony jeden z dwóch określonych warunków.

Składnia

LUB(,)

Przykład

= JEŻELI (LUB (10>9, -10> -jeden),'Prawdziwe','Fałszywy'

Ponieważ jeden z warunków przekazanych jako argumenty do funkcji LUB jest prawdziwy, formuła zwraca wartość „Prawda”.

NIE

Ta funkcja języka DAX wykonuje logiczne NIE (negację) dla danego wyrażenia.

Składnia

NIE()

Przykład

= NIE ([CalculatedColumn1])

Dla każdego wiersza w Calculated Column1 funkcja NOT zwraca logiczne przeciwieństwo podanej wartości.

JEŚLI

Ta funkcja języka DAX testuje serię danych wejściowych pod kątem tego, który spełnia warunek określony w argumencie.

Składnia

JEŚLI(test_logiczny> ,, wartość_jeżeli_fałsz)

Przykład

= JEŻELI ([połączenia]<200,'Niska', IF ([wywołania]<300,'średni','wysoki'))

JEŻELI BŁĄD

Ta funkcja języka DAX, npwycenia wyrażenie i zwraca określoną wartość, jeśli wyrażenie zwróci błąd.

Składnia

JEŻELI BŁĄD(wartość, wartość_jeśli_błąd)

Przykład

= JEŻELI BŁĄD (25/0,9999)

6. Funkcje informacyjne

JEST PUSTY

Ta funkcja języka DAXzwraca TRUE lub FALSE podosprawdzanie, czy wartość jest pusta.

Składnia

JEST PUSTY(<wartość>)

Przykład

= IF (ISBLANK ('CalculatedMeasures' [PreviousYearTotalSales]), BLANK (), ('CalculatedMeasures' [Total Sales] - 'CalculatedMeasures' [PreviousYearTotalSales]) / 'CalculatedMeasures' [PreviousYearTotalSales])

ISNUMBER

Ta funkcja języka DAXzwraca TRUE lub FALSE podosprawdzanie, czy wartość jest numeryczna.

Składnia

ISNUMBER(<wartość>)

Przykład

= JEŻELI (ISNUMBER (0),„Jest numerem”,„To nie jest numer”)

ISTEXT

Ta funkcja języka DAXzwraca TRUE lub FALSE podosprawdzanie, czy wartość jest tekstem.

Składnia

ISTEXT(<wartość>)

Przykład

= JEŻELI (ISTEKST ('tekst'),„Jest tekstem”,„Nie jest tekstem”)

ISNONTEXT

Ta funkcja języka DAXzwraca TRUE lub FALSE podosprawdzanie, czy wartość nie jest tekstem.

Składnia

ISNONTEXT(<wartość>)

Przykład

= JEŻELI (ISNONTEXT ('tekst'),„Nie jest tekstem”,„Jest tekstem”)

ISERROR

Ta funkcja języka DAXzwraca TRUE lub FALSE podosprawdzanie, czy wartość jest błędem.

Składnia

ISERROE(<wartość>)

Przykład

= JEŻELI (ISERROR (SUM ('ResellerSales_USD' [SalesAmount_USD]) / SUM ('InternetSales_USD' [SalesAmount_USD])), BLANK (), SUM ('ResellerSales_USD' [SalesAmount_USD]) / SUM ('InternetSales_USD' [SalesAmount_USD]))

7. Funkcje tekstowe

POWIĄZAĆ

Ta funkcja języka DAX jłączy dwa ciągi tekstowe w jeden.

Składnia

POWIĄZAĆ(,)

Przykład

= CONCATENATE („Witaj”, „Świat”)

CONCATENATEX

Ta funkcja języka DAXwynik wyrażenia obliczonego dla każdego wiersza w tabeli.

Składnia

CONCATENATEX(

,, [separator])

Przykład

= CONCATENATEX (Pracownicy; [FirstName] & „„ & [LastName]; „,”)

NAPRAWIONY

Ta funkcja języka DAX rłączy liczbę z określoną liczbą miejsc po przecinku i zwraca wynik jako tekst.

Składnia

NAPRAWIONY(,,)

Przykład

= FIXED ([PctCost],3,jeden)

ZASTĄPIĆ

Ta funkcja języka DAXzastępuje część ciągu tekstowego, na podstawie określonej liczby znaków, innym ciągiem tekstowym.

Składnia

ZASTĄPIĆ(,,,)

Przykład

= REPLACE ('Nowe produkty' [kod produktu],jeden,2,„OB”)

SZUKAJ

Ta funkcja języka DAX ret zwraca liczbę znaków, przy których określony ciąg tekstowy został znaleziony po raz pierwszy.

Składnia

SZUKAJ(, [, [] [,]])

Przykład

= SZUKAJ ('n','drukarka')

Formuła zwraca 4, ponieważ „n” jest czwartym znakiem w słowie „drukarka”.

GÓRNY

Ta funkcja języka DAX zwracaciąg tekstowy składający się z wszystkich wielkich liter.

Składnia

GÓRNY()

Przykład

= UPPER ([„Nowe produkty” [kod produktu])

Podstawy Power BI DAX: tworzenie pierwszej miary

Warunek wstępny: Musisz otworzyć ten dany plik programu Power BI Desktop .

Ponieważ zakładam, że będzie to Twój pierwszy krok, napiszę ten fragment bardzo szczegółowo, abyś mógł dalej go śledzić.

  1. Na liście pól Widok raportu , kliknij prawym przyciskiem myszy plik Obroty tabela, po której następuje New Measure .

  2. Zastąpić Pomiar wpisując nazwę nowej miary Sprzedaż w poprzednim kwartale, w Pasek Formuły .

  3. W tej formule chcesz użyć OBLICZ funkcjonować. Tak więc po znaku równości wpisz kilka pierwszych liter CAL , a następnie kliknij dwukrotnie funkcję, której chcesz użyć.

  4. Funkcja CALCULATE ma co najmniej dwa argumenty. Pierwsza to wyrażenie, które ma zostać ocenione, a druga to Filtr .

  5. Po otwarciu nawias ( dla OBLICZ funkcja, typ SUMA po którym następuje kolejny nawias otwierający ( przekazać argument do SUMA funkcjonować.

  6. Zacznij pisać Sól , a następnie wybierz Sprzedaż [SalesAmount] , po którym następuje nawias zamykający ) . To jest pierwszy argument wyrażający nasze OBLICZ funkcjonować.

  7. Wpisz a przecinek (,) po którym następuje spacja, aby określić pierwszy filtr, a następnie wpisz PREVIOUSQUARTER . To będzie nasz filtr.

  8. Będziesz używać PREVIOUSQUARTER funkcja analizy czasowej do filtrowania SUMA wyników z poprzedniego kwartału.

  9. Po nawiasie otwierającym ( dla funkcji PREVIOUSQUARTER wpisz Kalendarz [DateKey] .

  10. Plik PREVIOUSQUARTER funkcja ma jeden argument, kolumnę zawierającą ciągły zakres dat. W naszym przypadku to jest DateKey kolumna w tabeli kalendarza.

  11. Upewnij się, że oba argumenty przekazywane do PREVIOUSQUARTER i funkcja CALCULATE są zamknięte, wpisując dwa zamknięte nawiasy )) .

  12. Twoja formuła powinna teraz wyglądać następująco
    Sprzedaż w poprzednim kwartale = CALCULATE (SUMA (Sales [SalesAmount]), PREVIOUSQUARTER (Calendar [DateKey]))

  13. Kliknij znacznik wyboru na pasku formuły lub naciśnij klawisz Enter, aby sprawdzić poprawność formuły.

Po dodaniu tego do modelu, voila! Właśnie utworzyłeś miarę za pomocą języka DAX i nie jest to łatwa.

To, co robi ta formuła, to obliczyć łączną sprzedaż w poprzednim kwartale, w zależności od filtrów zastosowanych w raporcie.

Tak więc, gdybyśmy musieli umieścić Suma sprzedaży i nasz nowy Sprzedaż w poprzednim kwartale zmierzyć na wykresie, a następnie dodać Rok i QuarterOfYear tak jak Krajalnice, otrzymamy coś podobnego do poniższych

Teraz, gdy masz już podstawową wiedzę na temat pojęć w Power BI DAX, możesz samodzielnie rozpocząć tworzenie formuł języka DAX dla miar. Rzeczywiście, może to być trochę trudne do nauczenia, aleDAX istnieje od kilku lat iw sieci dostępnych jest wiele zasobów. Po przeczytaniu tego bloga i kilku eksperymentach możesz nauczyć się znajdować rozwiązania biznesowe za pomocą Power BI DAX.