Udostępnij za pośrednictwem


Pełne sprzężenia zewnętrzne

Jednym z rodzajów sprzężeń dostępnych w oknie dialogowym Scalanie w dodatku Power Query jest pełne sprzężenia zewnętrzne, które powoduje wyświetlenie wszystkich wierszy z tabel po lewej i prawej stronie. Więcej informacji: Omówienie operacji scalania

Przykład pełnego sprzężenia zewnętrznego.

Zrzut ekranu przedstawia lewą tabelę 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. Prawa tabela zawiera kolumny Id (Identyfikator) i Country (Kraj). Kolumna identyfikatora podkreślonego zawiera wartości 1 w wierszu 1 (oznaczające STANY ZJEDNOCZONE), 2 w wierszu 2 (oznaczające Kanadę), 3 w wierszu 3 (oznaczające Panamę) i 4 (oznaczające Hiszpanię) w wierszu 4. Tabela poniżej dwóch pierwszych tabel zawiera kolumny Date( Data), CountryID (Identyfikator kraju), Units (Jednostki) i Country (Kraj). Wszystkie wiersze są zmieniane w kolejności liczbowej zgodnie z wartością CountryID. Kraj skojarzony z numerem CountryID jest wyświetlany w kolumnie Country (Kraj). Ponieważ identyfikator kraju dla Hiszpanii nie był zawarty w lewej tabeli, dodawany jest nowy wiersz, a wartości daty, identyfikatora kraju i jednostek dla tego wiersza mają wartość null.

W tym artykule użyto przykładowych danych, aby pokazać, jak wykonać operację scalania z pełnym sprzężenia zewnętrznego. 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 .

    Zrzut ekranu przedstawiający tabelę Sales (Sprzedaż) zawierającą kolumny Date (Data), CountryID (Identyfikator kraju) 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 polami ID i Country. Pole Identyfikator reprezentuje unikatowy identyfikator dla każdego rekordu.

    Zrzut ekranu przedstawiający tabelę Kraje zawierającą kolumny ID i Country z identyfikatorem ustawionym na 1 w wierszu 1, 2 w wierszu 2, 3 w wierszu 3 i 4 w wierszu 4.

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 są wykonywane między następującymi kolumnami.

Pole z tabeli Sales Pole z tabeli Kraje
CountryID ID

Celem jest utworzenie tabeli podobnej do poniższej, w której nazwa kraju jest wyświetlana jako nowa kolumna Country w tabeli Sales . Ze względu na to, jak działa pełne sprzężenia zewnętrzne, wszystkie wiersze zarówno z lewej, jak i prawej tabel są wprowadzane, niezależnie od tego, czy są one wyświetlane tylko w jednej z tabel.

Końcowa tabela dla pełnej operacji sprzężenia zewnętrznego.

Zrzut ekranu przedstawiający ostatnią pełną tabelę sprzężeń zewnętrznych z kolumną Date( Data), CountryID (Identyfikator kraju) i Units (Jednostki) pochodzącymi z tabeli Sales (Sprzedaż) oraz kolumną Country (Kraj) pochodzącą z tabeli Countries (Kraje). Dodano piąty wiersz zawierający dane z Hiszpanii, ale ten wiersz zawiera wartość null w kolumnach Date (Data), CountryID (Identyfikator kraju) i Units (Jednostki), ponieważ te wartości nie istniały dla Hiszpanii w tabeli Sales (Sprzedaż).

Aby wykonać pełne sprzężenie zewnętrzne:

  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ę Pełne zewnętrzne.
  6. Wybierz OK

Okno dialogowe Scalanie z wynikami poprzedniej pełnej procedury sprzężenia zewnętrznego.

Uwaga

Możesz scalić więcej niż jedną kolumnę, zaznaczając i trzymając Ctrl, a następnie wybierając kolumny.

Napiwek

Przyjrzyj się bliżej komunikatowi w dolnej części okna dialogowego z napisem "Zaznaczenie pasuje do 4 z 5 wierszy z obu tabel". 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 (Sprzedaż) nie ma żadnych rekordów dla wartości CountryID 4. W związku z tym tylko trzy z czterech wierszy z prawej tabeli znalazło dopasowanie. Wszystkie wiersze z prawej tabeli, które nie miały pasujących wierszy z lewej tabeli, są grupowane i wyświetlane w nowym wierszu w tabeli wyjściowej bez wartości pól z lewej tabeli.

Zrzuty ekranu pokazujące brak pasujących wierszy dla Hiszpanii w lewej tabeli dla pełnego sprzężenia zewnętrznego, więc wartości Date, CountryID i Units dla Hiszpanii są ustawione na wartość null.

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

Zrzut ekranu przedstawiający opcje Rozwiń tabelę z wybraną kolumną Country (Kraj).

Po wykonaniu tej operacji utworzysz tabelę, która wygląda jak na poniższej ilustracji.

Końcowa tabela pełnego sprzężenia zewnętrznego.

Zrzut ekranu przedstawiający pełną zewnętrzną tabelę końcową sprzężenia zawierającą tabelę Date( Data), CountryID (Identyfikator kraju) i Units (Jednostki) oraz kolumnę Country (Kraj) pochodzącą z tabeli Countries (Kraje). Dodano piąty wiersz zawierający dane z Hiszpanii, ale ten wiersz zawiera wartość null w kolumnach Date (Data), CountryID (Identyfikator kraju) i Units (Jednostki), ponieważ te wartości nie istniały dla Hiszpanii w tabeli Sales (Sprzedaż).