Udostępnij za pośrednictwem


Prawe antysprzężenia

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

Przykład prawego 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 jeden wiersz z wartością Date(Data), CountryID (Identyfikator kraju) i Units (Jednostki) ustawioną na null(Data), CountryID (Jednostki) i Country (Kraj) ustawioną na Hiszpanię( Hiszpania).

W tym artykule użyto przykładowych danych, aby pokazać, jak wykonać operację scalania z odpowiednim 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: jest to tabela referencyjna z polami o identyfikatorze i kraju. 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 prawej tabeli, które nie pasują do żadnej z lewej tabeli. Typowym przypadkiem użycia jest znalezienie wszystkich wierszy dostępnych w prawej tabeli, ale nie można ich znaleźć w tabeli po lewej stronie.

Tabela utworzona na podstawie prawego antysprzężenia.

Prawa tabela końcowa antysprzężenia z kolumnami nagłówka Date, CountryID, Units i Country zawierającą jeden wiersz z wartością null we wszystkich kolumnach z wyjątkiem Kraju, który zawiera Hiszpanię.

Aby wykonać prawe 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ę Prawe anty.
  6. Wybierz przycisk OK.

Okno dialogowe Scalanie z wynikami poprzedniej procedury antysprzężenia prawego.

Napiwek

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

W tabeli Countries (Kraje) znajduje się hiszpania z identyfikatorem 4, ale w tabeli Sales nie ma żadnych rekordów countryID 4. Dlatego tylko jeden z dwóch wierszy z prawej (drugiej) tabeli znalazł dopasowanie. Ze względu na sposób działania prawego antysprzężenia nigdy nie zobaczysz żadnych wierszy z lewej (pierwszej) tabeli w danych wyjściowych tej operacji.

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 wygląda jak na poniższej ilustracji. Nowo rozwinięte pole Kraj nie ma żadnych wartości. Dzieje się tak, ponieważ prawe antysprzężenia nie przynoszą żadnych wartości z lewej tabeli — przechowuje tylko wiersze z prawej tabeli.

Prawa tabela końcowa antysprzężenia.

Końcowa tabela z kolumnami nagłówka Date, CountryID, Units i Country zawierającą jeden wiersz z wartością null we wszystkich kolumnach z wyjątkiem Kraju, który zawiera Hiszpanię.