Lewy antysprzężenia

Jednym z rodzajów sprzężeń dostępnych w oknie dialogowym Scalanie w dodatku Power Query jest lewe antysprzężenia, które powoduje tylko wiersze z lewej tabeli, które nie mają pasujących wierszy z prawej tabeli. Więcej informacji: Omówienie operacji scalania

Przykład lewego antysprzężenia.

Rysunek przedstawia tabelę po lewej stronie z kolumnami Date (Data), CountryID (Identyfikator kraju) i Units (Jednostki). Podkreślona kolumna CountryID zawiera wartości 1 w wierszach 1 i 2, 3 w wierszu 3 i 2 w wierszu 4. Tabela po prawej stronie zawiera kolumny ID i Country. Kolumna identyfikatora podkreślonego zawiera wartości 3 w wierszu 1 (oznaczające Panamę) i 4 w wierszu 2 (oznaczające Hiszpanię). Tabela poniżej dwóch pierwszych tabel zawiera kolumny Date( Data), CountryID (Identyfikator kraju), Units (Jednostki) i Country (Kraj). Tabela zawiera trzy wiersze z dwoma wierszami zawierającymi dane countryID 1 i jeden wiersz countryID 2. Ponieważ żaden z pozostałych identyfikatorów CountryID nie jest zgodny z żadnym z krajów/regionów w prawej tabeli, wiersze w kolumnie Country w scalonej tabeli zawierają wartość null.

W tym artykule użyto przykładowych danych, aby pokazać, jak wykonać operację scalania z lewym antysprzężeniami. Przykładowe tabele źródłowe dla tego przykładu to:

  • Sales (Sprzedaż): ta tabela zawiera pola Date (Data), CountryID (Identyfikator kraju) i Units (Jednostki). CountryID to wartość całkowita reprezentująca unikatowy identyfikator z tabeli Kraje .

    Tabela sprzedaży zawierająca kolumny Date, CountryID i Units z wartością CountryID ustawioną na 1 w wierszach 1 i 2, 3 w wierszu 3 i 2 w wierszu 4.

  • Kraje: ta tabela jest tabelą referencyjną z identyfikatorami pól i krajami. Pole id reprezentuje unikatowy identyfikator dla każdego rekordu.

    Tabela krajów o identyfikatorze ustawionym na 3 w wierszu 1 i 4 w wierszu 2, a kraj ustawiony na Panamę w wierszu 1 i Hiszpanii w wierszu 2.

W tym przykładzie scalisz obie tabele z tabelą Sales (Sprzedaż ) jako tabelą po lewej stronie i tabelą Countries (Kraje ) po prawej stronie. Sprzężenia zostaną wykonane między następującymi kolumnami.

Pole z tabeli Sales Pole z tabeli Kraje
CountryID identyfikator

Celem jest utworzenie tabeli podobnej do poniższej, w której przechowywane są tylko wiersze z lewej tabeli, które nie pasują do żadnej z prawej tabeli.

Lewa tabela końcowa antysprzężenia.

Lewa tabela końcowa antysprzężenia z nagłówkami kolumn Date, CountryID, Units i Country oraz trzema wierszami danych, z których wszystkie wartości kolumny Country mają wartość null.

Aby wykonać lewe antysprzężenie

  1. Wybierz zapytanie Sales (Sprzedaż), a następnie wybierz pozycję Merge query (Scal zapytania).
  2. W oknie dialogowym Scalanie w obszarze Prawa tabela do scalania wybierz pozycję Kraje.
  3. W tabeli Sales (Sprzedaż) wybierz kolumnę CountryID (Identyfikator kraju).
  4. W tabeli Kraje wybierz kolumnę id.
  5. W sekcji Rodzaj sprzężenia wybierz pozycję Lewy anty.
  6. Wybierz przycisk OK.

Okno dialogowe Scalanie z wynikami poprzedniej procedury antysprzężenia po lewej stronie.

Napiwek

Przyjrzyj się bliżej komunikatowi w dolnej części okna dialogowego z napisem "Zaznaczenie wyklucza 1 z 4 wierszy z pierwszej tabeli". Ten komunikat ma kluczowe znaczenie dla zrozumienia wyniku uzyskanych z tej operacji.

W tabeli Sales (Sprzedaż) znajduje się identyfikator CountryID 1 i 2, ale żadna z nich nie znajduje się w tabeli Kraje. Dlatego dopasowanie znalazło tylko jeden z czterech wierszy w lewej (pierwszej) tabeli.

W tabeli Countries (Kraje) znajduje się hiszpania z identyfikatorem4, ale w tabeli Sales nie ma żadnych rekordów countryID 4. Dlatego tylko jeden z dwóch wierszy z prawej (drugiej) tabeli znalazł dopasowanie.

W nowo utworzonej kolumnie Kraje rozwiń pole Kraj . Nie zaznaczaj pola wyboru Użyj oryginalnej nazwy kolumny jako prefiksu .

Rozwiń kolumnę tabeli dla pola Kraj.

Po wykonaniu tej operacji utworzysz tabelę, która będzie wyglądać jak na poniższej ilustracji. Nowo rozwinięte pole Kraj nie ma żadnych wartości. Dzieje się tak, ponieważ lewy antysprzężenia nie przynosi żadnych wartości z prawej tabeli — przechowuje tylko wiersze z lewej tabeli.

Końcowa tabela lewego antysprzężenia.

Końcowa tabela z nagłówkami kolumn Date, CountryID, Units i Country oraz trzema wierszami danych, z których wszystkie wartości kolumny Country mają wartość null.