Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

W tym samouczku poznasz różne słowa kluczowe i funkcje w DAX Studio wraz z konkretnym przykładem zapytania dla każdego z nich.

W szczególności dowiesz się o słowach kluczowych ORDER BY i START AT, a także o funkcjach TOPNSKIP i ADDMISSINGITEMS.

Spis treści

Przykład zapytania języka DAX: słowo kluczowe ORDER BY

Słowo kluczowe ORDER BY umożliwia sortowanie zestawu danych.

Podstawowy przykład

Na przykład, używając słowa kluczowego ORDER BY, możesz posortować kolumnę alfabetycznie.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Jak widać, dane pierwszego wiersza zaczynają się od litery „A”. Domyślna kolejność sortowania DAX Studio to rosnąca .

Jeśli chcesz, aby Twoje dane były wyświetlane w kolejności malejącej, napisz DESC . W tym przykładzie zamiast litery A kolumna Marka będzie się zaczynać od litery „W”.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Podobnie, jeśli chcesz przywrócić porządek rosnący, napisz ASC . Możesz także sortować wiele kolumn jednocześnie. Możesz to zrobić, wpisując żądane kolumny, oddzielając je przecinkami.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Przykład ze świata rzeczywistego

Przyjrzyjmy się teraz prostej, rzeczywistej aplikacji używającej słowa kluczowego ORDER BY. Jest to ten sam przykład, który został użyty w samouczku dotyczącym słów kluczowych TABLE .

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Możesz zobaczyć, że ta tabela zwraca 3 kolumny. Pierwszym z nich jest typ produktu, składający się z nudnego i modnego. Druga kolumna pokazuje łączną sprzedaż według typu produktu. Trzeci zwraca procent sprzedaży.

W tym przykładzie musisz utworzyć nową kolumnę, która sortuje typ produktu. Dlatego po instrukcji wpisz słowo kluczowe COLUMN , a następnie nazwę kolumny, którą chcesz utworzyć.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Formuła dla tej kolumny jest taka sama jak składnia JEŻELI, ale zamiast „Modny” i „Nudny” w tej kolumnie będzie wyświetlana „1” dla Modny i „2” dla Nudny.

Aby wyświetlić tę kolumnę w tabeli, zapisz ją w składni EVALUATE.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Zobaczysz wtedy, że do tabeli zawierającej liczby 1 i 2 zostanie dodana nowa kolumna Sortowanie typu produktu.

Aby posortować tę kolumnę, wpisz słowo kluczowe ORDER BY po składni . Następnie po nazwie kolumny wpisz ASC lub DESC w zależności od kolejności sortowania, w jakiej ma być dana kolumna.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Przykład zapytania DAX: START AT

Następną rzeczą, której się nauczysz, jest słowo kluczowe START AT .

START AT to przestarzałe słowo kluczowe. Jego użycie nie jest zalecane w przypadku większości zapytań języka DAX. Jednak nadal możesz znaleźć kod DAX, który to wykorzystuje. Dlatego nadal ważne jest, aby wiedzieć, co to jest iw jakich przypadkach można go użyć.

Podstawowy przykład

Najpierw napisz słowo kluczowe EVALUATE. W tym przykładzie użyto tabeli Produkty. Przed napisaniem START AT najpierw użyj ORDER BY , a następnie określ kolumny, które chcesz uwzględnić.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji


Następnie możesz napisać START AT. Ta składnia będzie zgodna z kolejnością podobną do tego, jak napisałeś swoje kolumny w ORDER BY. W tym przykładzie kolumna Klucz produktów rozpocznie się od „2”, a kolumna Marka rozpocznie się od „Contoso”.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po naciśnięciu klawisza F5 można zobaczyć w tabeli Wyniki, że określone kolumny są zgodne z kierunkiem zapytania.

Zobaczmy teraz, co się stanie, gdy zostanie dodana kolejna kolumna. W takim przypadku kolumna Kolor powinna zaczynać się od „Srebrny”.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po uruchomieniu tego zapytania możesz zobaczyć, że pierwszy wpis w kolumnie Kolor to „biały”. Nie ma gwarancji, że wynik będzie zawsze zgodny ze wszystkimi warunkami przy użyciu START AT.

W tym przykładzie w tabeli Products nie ma żadnego wystąpienia zawierającego 2, Contoso i Silver w tym samym wierszu. Zamiast tego aparat języka DAX próbuje utworzyć najlepsze dopasowanie do utworzonego zapytania.

Złożony przykład

Spójrzmy na inny przykład:

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po EVALUATE wpisz słowo kluczowe ORDER BY, po którym następują trzy określone kolumny. Następnie napisz START AT. W takim przypadku kolumna Kolor powinna zaczynać się od „Czerwony”, kolumna Płeć powinna zaczynać się od „M”, a kolumna Klucz sklepu powinna zaczynać się od „2”.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po uruchomieniu zapytania widać, że silnik języka DAX starał się jak najlepiej dopasować do określonych parametrów.

W wynikach widać, że dwie kolumny są poprawne, a kolumna Store Key zaczyna się od 199 zamiast 2. Wynika to z faktu, że w modelu danych tego przykładu nie istnieje klucz Store Key równy 2.

Wolny silnik DAX

Kliknij przycisk Czasy serwera na karcie Strona główna.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Na dole pojawi się nowa karta. Kliknij przycisk Wyczyść pamięć podręczną, a następnie uruchom znajdujący się w rozwijanej strzałce Uruchom.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Widać, że wykonanie zapytania zajmuje DAX Studio 142 ms. Jeśli usuniesz składnię START AT i ponownie uruchomisz kod, zobaczysz, że wykonanie zajmie tylko 11 ms.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Uruchomienie zapytania trwa dłużej, jeśli istnieje składnia START AT, ponieważ wywołuje zachowanie aparatu języka DAX o nazwie CallBackDataID .

START AT sprawia, że ​​Twój kod jest bardzo wolny. Jeśli korzystanie z niego nie jest wymagane, lepiej go unikać.

Ma to znaczący wpływ na ogólną wydajność pisanego kodu DAX. Dlatego najlepiej jest korzystać z innych podobnych funkcji.

Przykład zapytania języka DAX: funkcja TOPNSKIP

Następną rzeczą, której nauczysz się w tym samouczku, jest funkcja TOPNSKIP . Ta funkcja jest podobna do , ale ma jedną subtelną różnicę wraz z dodatkowym parametrem. Aby lepiej to zrozumieć, spójrzmy na przykład.

TOPN kontra TOPNSKIP

Najpierw napisz słowo kluczowe EVALUATE. Następnie wpisz argument TOPN poniżej, aby wyświetlić 100 najlepszych wierszy w tabeli produktów.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Ta tabela została również posortowana rosnąco w odniesieniu do kolumny Klucz produktu.

Teraz zamień TOPN na TOPNSKIP. W drugim argumencie podaj liczbę wierszy, które chcesz pominąć. W tym przykładzie podano 10.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Gdy to uruchomisz, zobaczysz, że kolumna Klucz produktu zaczyna się teraz od 11 i kończy na 110. Pamiętaj, że nie możesz używać funkcji TOPNSKIP wewnątrz tabeli obliczeniowej ani w tabelarycznym modelu danych.

Inny przykład

W następnym przykładzie przyjrzyjmy się 5000 najlepszych wierszy w tabeli klientów. Ta tabela jest posortowana rosnąco w odniesieniu do kolumny Płeć.

Jeśli użyjesz funkcji TOPN, zobaczysz, że tabela zwraca 9518 wierszy. Oznacza to, że nawet jeśli wybrałeś wyświetlanie tylko pierwszych 5000 wierszy, niektóre dane pozostały niefiltrowane.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Jeśli jednak użyjesz funkcji TOPNSKIP, zobaczysz, że tabela zwraca tylko pierwsze 5000 wierszy w kolumnie Płeć.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Więc nawet jeśli kolumna Płeć klienta ma wiele reguł dla określonej płci, funkcja TOPNSKIP zwróci tylko pierwsze 5000 wierszy. Ten wynik nie jest gwarantowany w przypadku korzystania z funkcji TOPN.

Przykład zapytania języka DAX: funkcja ADDMISSINGITEMS

Na koniec przyjrzyjmy się funkcji ADDMISSINGITEMS w DAX Studio.

Kiedy używasz SUMMARIZECOLUMNS, domyślnie spróbuje usunąć puste wiersze z wyniku. Na przykład możemy napisać zapytanie podsumowujące kolor produktów, markę produktów i płeć klienta.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po naciśnięciu klawisza F5 widać, że tabela zwraca trzy kolumny. Kolumna Płeć składa się z 3 typów płci: Mężczyzna, Kobieta i Pusta. Blank reprezentuje Firmę. Możesz również zobaczyć, że zwraca 333 wiersze.

Ale jeśli utworzysz kolumnę Total Sales, filtr SUMMARIZECOLUMNS usunie wiersze zawierające puste wartości dla Total Sales. Zamiast 333 wierszy tabela zawiera teraz tylko 323 wiersze.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Istnieją 2 opcje przywrócenia tych wierszy. Pierwszą opcją jest dodanie zera po Total Sales. W wynikach widać, że 10 wierszy zwraca wartość zero dla Total Sales.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Jednak ta opcja nie zawsze daje najlepsze rezultaty. Zamiast tego istnieje konkretna funkcja, której można użyć do rozwiązania tego problemu: funkcja ADDMISSINGITEMS .

Aby użyć tej funkcji, umieść to po EVALUATE. W pierwszym argumencie napisz kolumny. Kolumny te należy również wkleić w parametrze groupBy elementu SUMMARIZECOLUMNS.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po uruchomieniu tego zapytania zobaczysz, że tabela zwraca teraz 333 wiersze.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Jeśli posortujesz kolumny Total Sales i usuniesz zero, tabela zwróci puste wartości w kolumnie Total Sales.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Dlatego zamiast zgłaszać zero, tabela zwraca puste miejsce dla wierszy, które zostały usunięte przez funkcję SUMMARIZECOLUMNS.

Korzystanie z ADDMISSINGITEMS i FILTER

Możesz także użyć funkcji ADDMISSINGITEMS razem z . Na przykład odfiltrujmy wiersze zawierające „Zabawki typu Tailspin”. W zapytaniu jest napisane, że kolumna Marka nie może zawierać ( <> ) Tailspin Toys.

Przykład zapytania języka DAX przy użyciu różnych słów kluczowych i funkcji

Po naciśnięciu klawisza F5 widać, że tabela zwraca teraz tylko 331 wierszy. Usunięto więc te dwa wiersze zawierające markę „Tailspin Toys”.

Wniosek

Dwa słowa kluczowe i dwie funkcje omówione w tym samouczku to podstawowa wiedza, którą trzeba posiadać podczas tworzenia zapytań w DAX Studio. Przydadzą się one w przypadku bardziej złożonych aplikacji w świecie rzeczywistym.

DAX Studio to potężne narzędzie do wykonywania i analizowania zapytań języka DAX. Ważne jest, aby nauczyć się podstaw kodowania tego oprogramowania, aby łatwiej było sobie radzić z zaawansowanymi zapytaniami w przyszłości.

Eksperci LuckyTemplates

Leave a Comment

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

Dodawaj, usuwaj i zmieniaj nazwy kolumn w R za pomocą Dplyr

W tym samouczku omówimy pakiet dplyr, który umożliwia sortowanie, filtrowanie, dodawanie i zmianę nazw kolumn w języku R.

Funkcje zbierania w Microsoft Power Automate

Funkcje zbierania w Microsoft Power Automate

Odkryj różnorodne funkcje zbierania, które można wykorzystać w Power Automate. Zdobądź praktyczne informacje o funkcjach tablicowych i ich zastosowaniu.

Oceń wydajność kodu DAX w DAX Studio

Oceń wydajność kodu DAX w DAX Studio

Z tego samouczka dowiesz się, jak ocenić wydajność kodów DAX przy użyciu opcji Uruchom test porównawczy w DAX Studio.

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Czym jest self w Pythonie: przykłady z życia wzięte

Jak zapisać i załadować plik RDS w R

Jak zapisać i załadować plik RDS w R

Dowiesz się, jak zapisywać i ładować obiekty z pliku .rds w R. Ten blog będzie również omawiał sposób importowania obiektów z R do LuckyTemplates.

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Powrót do pierwszych N dni roboczych — rozwiązanie języka kodowania DAX

Z tego samouczka języka kodowania DAX dowiesz się, jak używać funkcji GENERUJ i jak dynamicznie zmieniać tytuł miary.

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

Zaprezentuj spostrzeżenia przy użyciu wielowątkowej techniki dynamicznych wizualizacji w usłudze LuckyTemplates

W tym samouczku omówiono sposób korzystania z techniki wielowątkowych wizualizacji dynamicznych w celu tworzenia szczegółowych informacji na podstawie dynamicznych wizualizacji danych w raportach.

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

Wprowadzenie do filtrowania kontekstu w usłudze LuckyTemplates

W tym artykule omówię kontekst filtra. Kontekst filtrowania to jeden z głównych tematów, z którym każdy użytkownik usługi LuckyTemplates powinien zapoznać się na początku.

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Najlepsze wskazówki dotyczące korzystania z aplikacji w usłudze online LuckyTemplates

Chcę pokazać, jak usługa online LuckyTemplates Apps może pomóc w zarządzaniu różnymi raportami i spostrzeżeniami generowanymi z różnych źródeł.

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Analizuj zmiany marży zysku w godzinach nadliczbowych — Analizuj za pomocą LuckyTemplates i DAX

Dowiedz się, jak obliczyć zmiany marży zysku przy użyciu technik, takich jak rozgałęzianie miar i łączenie formuł języka DAX w usłudze LuckyTemplates.