Udostępnij za pośrednictwem


Opis funkcji hierarchii nadrzędny-podrzędny w DAX

DAX oferuje pięć funkcji ułatwiających użytkownikom zarządzanie danymi, które są prezentowane jako hierarchia nadrzędny-podrzędny w swoich modelach. Dzięki tym funkcjom użytkownik może uzyskać cały wiersz pochodzenia elementów nadrzędnych, ile poziomów ma pochodzenie do najwyższego elementu nadrzędnego, który jest nadrzędnym n-poziomami powyżej bieżącego wiersza, który jest elementem n-potomnym w górnej części bieżącej hierarchii wierszy, and jest elementem nadrzędnym w bieżącej hierarchii wierszy?

Funkcje nadrzędno-podrzędne w DAX

W poniższej tabeli contains hierarchii Parent-Child w kolumnach: EmployeeKeyandParentEmployeeKey używanych w all przykładach funkcji.

Klucz pracownika ParentEmployeeKey
112
14 112
3 14
11 3
13 3
162 3
117 162
221 162
81 162

W powyższej tabeli widać, że pracownik 112 nie ma zdefiniowanego rodzica, pracownik 14 ma pracownika 112 jako kierownik (ParentEmployeeKey), pracownik 3 ma pracownika 14 jako kierownika and pracowników 11, 13, and 162 mają pracownika 3 jako kierownika. Powyższe pomaga zrozumieć, że pracownik 112 nie ma kierownika powyżej niej/go and ona/on jest najlepszym menedżerem dla pracowników all pokazanych tutaj; ponadto pracownik 3 zgłasza pracownikom 14 and pracowników 11, 13, 162 do 3.

W poniższej tabeli przedstawiono dostępne funkcje, krótki opis funkcji and przykład funkcji na tych samych danych przedstawionych powyżej.

PATH funkcja — zwraca rozdzielany tekst z identyfikatorami all elementów nadrzędnych do bieżącego wiersza, począwszy od najstarszego or najbardziej aktualnego.

Klucz pracownika ParentEmployeeKey Path
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11
13 3 112|14|3|13
162 3 112|14|3|162
117 162 112|14|3|162|117
221 162 112|14|3|162|221
81 162 112|14|3|162|81

PATHLENGTH funkcja — zwraca liczbę poziomów w danym PATH(), począwszy od bieżącego poziomu do najstarszego or najwyższego poziomu nadrzędnego. W poniższej przykładowej kolumnie PathLength jest zdefiniowana jako "= PATHLENGTH([Path])"; Przykład zawiera all dane z Path(), aby ułatwić zrozumienie sposobu działania tej funkcji.

Klucz pracownika ParentEmployeeKey Path PathLength
112 112 1
14 112 112|14 2
3 14 112|14|3 3
11 3 112|14|3|11 4
13 3 112|14|3|13 4
162 3 112|14|3|162 4
117 162 112|14|3|162|117 5
221 162 112|14|3|162|221 5
81 162 112|14|3|162|81 5

funkcji — zwraca element na określonej pozycji z (), na przykład wynik, licząc od do . W poniższej przykładowej kolumnie PathItem — 4 z left jest definiowana jako "= PATHITEM([Path], 4)"; Ten przykład zwraca wartość EmployeKey na czwartej pozycji w ciągu Path z left, używając tych samych danych sample z przykładu Path().

Klucz pracownika ParentEmployeeKey Path PathItem — 4 miejsce od left
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11 11
13 3 112|14|3|13 13
162 3 112|14|3|162 162
117 162 112|14|3|162|117 162
221 162 112|14|3|162|221 162
81 162 112|14|3|162|81 162

PATHITEMREVERSE funkcja — zwraca element w position z wyniku PATH(), takiego jak wynik funkcji, licząc wstecz od right do left. W poniższej przykładowej kolumnie PathItemReverse — trzeci z right jest zdefiniowany jako "= PATHITEMREVERSE([Path], 3)"; Ten przykład zwraca wartość EmployeKey na trzeciej pozycji w ciągu Path z right, używając tych samych danych sample z przykładu Path().

Klucz pracownika ParentEmployeeKey Path PathItemReverse — trzeci od right
112 112
14 112 112|14
3 14 112|14|3 112
11 3 112|14|3|11 14
13 3 112|14|3|13 14
162 3 112|14|3|162 14
117 162 112|14|3|162|117 3
221 162 112|14|3|162|221 3
81 162 112|14|3|162|81 3

funkcji — zwraca określona istnieje w określonym . W poniższej przykładowej kolumnie PathContains — pracownik 162 jest zdefiniowany jako "= PATHCONTAINS([Path], "162")"; Ten przykład zwraca TRUEif danego pracownika pathcontains 162. W tym przykładzie użyto wyników z powyższego przykładu Path().

Klucz pracownika ParentEmployeeKey Path PathContains — pracownik 162
112 112 FALSE
14 112 112|14 FALSE
3 14 112|14|3 FALSE
11 3 112|14|3|11 FALSE
13 3 112|14|3|13 FALSE
162 3 112|14|3|162 TRUE
117 162 112|14|3|162|117 TRUE