Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Jedną z najbardziej zaawansowanych funkcji programu Power Pivot jest możliwość tworzenia relacji między tabelami, a następnie używania powiązanych tabel do wyszukiwania lub filtrowania powiązanych danych. Powiązane wartości można pobrać z tabel przy użyciu języka formuł dostępnego w językuPower Pivot, Data Analysis Expressions (DAX). Język DAX używa modelu relacyjnej, przez co można łatwo i dokładnie pobrać powiązane lub odpowiadające im wartości w innej tabeli lub innej kolumnie. Jeśli znasz funkcję WYSZUKAJ.V.EXCEL w programie Excel, ta funkcja w programie Power Pivot jest podobna, ale znacznie łatwiejsza do wdrożenia.

Możesz tworzyć formuły, które tworzą odnośniki jako część kolumny obliczeniowej lub jako część miary do użycia w tabeli przestawnej lub w wykres przestawny. Aby uzyskać więcej informacji, zobacz następujące tematy:

Pola obliczeniowe w dodatku Power Pivot

Kolumny obliczeniowe w dodatku Power Pivot

W tej sekcji opisano funkcje języka DAX dostępne do wyszukiwania oraz przedstawiono kilka przykładów ich używania.

Uwaga: W zależności od typu operacji wyszukiwania lub formuły odnośnika, której chcesz użyć, może być konieczne najpierw utworzenie relacji między tabelami.

Opis funkcji odnośników

Możliwość wyszukiwania pasujących lub powiązanych danych z innej tabeli jest szczególnie przydatna w sytuacjach, gdy w bieżącej tabeli znajduje się tylko pewien identyfikator, ale potrzebne dane (takie jak cena produktu, nazwa lub inne szczegółowe wartości) są przechowywane w powiązanej tabeli. Jest to również przydatne, gdy w innej tabeli znajduje się wiele wierszy powiązanych z bieżącym wierszem lub bieżącą wartością. Na przykład możesz łatwo pobrać wszystkie sprzedaż powiązane z określonym regionem, sklepem lub sprzedawcą.

W odróżnieniu od funkcji wyszukiwania języka Excel, takich jak WYSZUKAJ.WYSZUKAJ, które są oparte na tablicach, lub WYSZUKAJ, które pobiera pierwszą z wielu pasujących wartości, język DAX jest zgodny z istniejącymi relacjami między tabelami sprzężeniami kluczy w celu uzyskania dokładnie pasującej wartości. Język DAX może również pobierać tabelę rekordów powiązanych z bieżącym rekordem.

Uwaga: Jeśli znasz relacyjne bazy danych, możesz pojąć wyszukiwania w programie Power Pivot podobnie jak zagnieżdżona instrukcja podwybór w programie Transact-SQL.

Pobieranie pojedynczej wartości pokrewnej

Funkcja RELATED zwraca pojedynczą wartość z innej tabeli powiązaną z bieżącą wartością w bieżącej tabeli. Określasz kolumnę zawierającą dane, których potrzebujesz, a funkcja stosuje się do istniejących relacji między tabelami w celu pobrania wartości z określonej kolumny w powiązanej tabeli. W niektórych przypadkach ta funkcja musi podążać za łańcuchem relacji, aby pobrać dane.

Załóżmy na przykład, że masz listę dzisiejszych wysyłki w Excel. Jednak ta lista zawiera tylko numer identyfikacyjny pracownika, numer identyfikacyjny zamówienia i numer identyfikacyjny spedytora, co ułatwia odczytanie raportu. Aby uzyskać dodatkowe informacje, możesz przekonwertować listę na tabelę połączona Power Pivot, Power Pivot następnie utworzyć relacje z tabelami Pracownik i Odsprzedawca, pasujące do pola EmployeeID (Identyfikator Pracownika) i ResellerID (KluczSprzedawców) z polem ResellerKey.

Aby wyświetlić informacje odnośnika w tabeli połączonej, dodaj dwie nowe kolumny obliczeniowe z następującymi formułami:

= RELATED('Pracownicy'[Nazwa Pracownika])
= RELATED('Resellers'[Nazwa_firmy])

Dzisiejsze przesyłki przed rozpoczęciem wyszukiwania

ID_zamówienia

EmployeeID (Identyfikator pracownika)

ResellerID

100314

230

445

100315

15

445

100316

76

108

Tabela Employees

EmployeeID (Identyfikator pracownika)

Pracownik

Odsprzedawca

230

Kuppa Vamsi

Modular Cycle Systems

15

Pilar Ackeman

Modular Cycle Systems

76

Kim Ralls

Rowery skojarzone

Dzisiejsze przesyłki z odnośnikami

ID_zamówienia

EmployeeID (Identyfikator pracownika)

ResellerID

Pracownik

Odsprzedawca

100314

230

445

Kuppa Vamsi

Modular Cycle Systems

100315

15

445

Pilar Ackeman

Modular Cycle Systems

100316

76

108

Kim Ralls

Rowery skojarzone

Ta funkcja używa relacji między tabelą połączona a tabelą Pracownicy i Odsprzedawcy, aby uzyskać poprawną nazwę dla każdego wiersza w raporcie. Wartości pokrewnych można również używać do obliczeń. Aby uzyskać więcej informacji i przykładów, zobacz RELATED, funkcja.

Pobieranie listy wartości pokrewnych

Funkcja RELATEDTABLE działa zgodnie z istniejącą relacją i zwraca tabelę zawierającą wszystkie pasujące wiersze z określonej tabeli. Załóżmy na przykład, że chcesz sprawdzić, ile zamówień zda w tym roku każdy odsprzedawca. Możesz utworzyć nową kolumnę obliczeniową w tabeli Resellers, która zawiera następującą formułę, która wyszukuje rekordy dla każdego odsprzedawcy w tabeli ResellerSales_USD i zlicza poszczególne zamówienia złożone przez poszczególnych sprzedawców. 

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

W tej formule funkcja RELATEDTABLE najpierw pobiera wartość resellerKey dla każdego odsprzedawcy w bieżącej tabeli. (Nie trzeba określać kolumny Identyfikator w żadnym miejscu w formule, ponieważ Power Pivot używa istniejącej relacji między tabelami). Funkcja RELATEDTABLE pobiera wszystkie wiersze z tabeli ResellerSales_USD, które są powiązane z każdym sprzedawcą, i zlicza wiersze. Jeśli nie ma żadnej relacji (bezpośredniej lub pośredniej) między dwiema tabelami, zostaną na przykład wszystkie wiersze z ResellerSales_USD tabeli.

W przypadku sprzedawcy z modułem Modular Cycle Systems w naszej przykładowej bazie danych w tabeli sprzedaży znajdują się cztery zamówienia, więc funkcja zwraca wartość 4. W przypadku produktów Associated Bikes odsprzedawca nie ma sprzedaży, więc funkcja zwraca wartość pustą.

Odsprzedawca

Rekordy w tabeli sprzedaży tego odsprzedawcy

Modular Cycle Systems

Identyfikator odsprzedawcy

SalesOrderNumber

445

SO53494

445

SO71872

445

SO65233

445

SO59000

Identyfikator odsprzedawcy

SalesOrderNumber

Rowery skojarzone

Uwaga: Ponieważ funkcja RELATEDTABLE zwraca tabelę, a nie pojedynczą wartość, należy jej użyć jako argumentu funkcji wykonującej operacje na tabelach. Aby uzyskać więcej informacji, zobacz RELATEDTABLE, funkcja.

Początek strony

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×