Przejdź do głównej zawartości

Krok Table Anti Join zwraca zbiór niedopasowanych elementów między dwiema tabelami. Zwraca listę elementów z pierwszej tabeli, które nie mają dopasowań w drugiej tabeli. Może to być bardzo przydatne do ustalenia, które rekordy są obecne w jednej tabeli, a nie ma ich w drugiej.

Tę operację można wykonać za pomocą złączeń zewnętrznych i filtrowania po wartościach null dla złączenia; jednak transformacja Anti Join wykona to w sposób wydajniejszy i bardziej czytelny.

tylko Abrak dopasowania w BTabela B
Złączenie anty — zachowuje tylko wiersze źródła A, które nie mają dopasowania w źródle B (złączenie wykluczające z lewej strony). Kolumny wyjściowe pochodzą tylko z A; B dostarcza klucze, względem których następuje sprawdzenie.

Źródło tabeli

Określ źródłową tabelę danych, wybierając ją z menu rozwijanego.

Kolumny źródłowe

Określ tutaj wszystkie kolumny do uwzględnienia. Wybranie przycisków Sprawdź źródło i Wypełnij tabelę mapowania źródła udostępni te kolumny na potrzeby operacji złączenia.

Wybór podzbioru danych źródłowych

Do utworzenia podzbioru danych można użyć dowolnego poprawnego wyrażenia Python. Więcej szczegółów i przykładów znajdziesz w artykule Wyrażenia.

Źródło tabeli

Wybierz Przenieś także kolumny nazwane w czasie wykonania, aby przekazać bez zmian każdą kolumnę źródłową, której krok nie wymienia, w takiej postaci, jaką ma tabela w chwili uruchomienia kroku. Użyj tego, gdy wcześniejszy krok tworzy kolumny, których nazwy zależą od danych, na przykład tabela przestawna, więc nie możesz ich wymienić podczas budowania kroku. Pozostaw wyłączone, aby zapisywać tylko wymienione kolumny.

Tabela docelowa

Tabela docelowa

Aby ustawić tabelę docelową, wybierz istniejącą tabelę z listy rozwijanej Tabela docelowa albo kliknij zielony znak “+”, aby utworzyć nową tabelę docelową.

Tworzenie tabeli

Podczas tworzenia nowej tabeli możesz utworzyć ją jako Widok lub jako Tabela.

Widoki:

Widoki są przydatne, ponieważ czas wykonania kroku jest znacznie krótszy niż w przypadku tabeli. Wadą widoków jest to, że nie nadają się do eksploracji danych w trybie Szczegóły tabeli.

Tabele:

Gdy celem jest tabela, wykonanie kroku trwa dłużej, ale eksploracja danych w trybie Szczegóły jest znacznie szybsza niż w przypadku widoku.

Mapa złączenia tabel

Określ warunki złączenia. Przycisk Zgadnij wypełnia tabelę Join Map pierwszą z poniższych metod, którą mogą zastosować kolumny obu tabel:

  • klucze innego kroku złączenia w tym projekcie, który łączy te same dwie tabele
  • klucze zatwierdzonej metryki, która je łączy
  • kolumny kluczowe ustawione w jednej z tabel, dopasowane według nazwy w drugiej
  • kolumny o tej samej nazwie w tabelach Table 1 i Table 2
  • kolumny, których nazwy różnią się tylko wielkością liter lub podkreśleniami, albo kolumna id dopasowana do kolumny nazwanej od swojej tabeli, na przykład customer_id dla tabeli o nazwie Customers

Wiersz pod mapą informuje, której metody użyto, dopóki nie zmienisz mapy. Funkcja Zgadnij odczytuje kolumny tabel, a nie ich wiersze, więc przed zapisaniem sprawdź klucze. Przycisk Sprawdź źródło wypełnia pustą tabelę Join Map w ten sam sposób.

Aby ręcznie dodać kolejne kolumny, kliknij prawym przyciskiem myszy w dowolnym miejscu sekcji i wybierz Wstaw wiersz lub Dołącz wiersz, aby dodać wiersz przed aktualnie zaznaczonym wierszem lub na końcu. Następnie wpisz nazwy kolumn do dopasowania z tabeli Table 1 do tabeli Table 2. Aby usunąć pole z tabeli Join Map, kliknij prawym przyciskiem myszy i wybierz Usuń.

Konfiguracja Data Mapper

Data Mapper tabeli

Data Mapper służy do mapowania kolumn z danych źródłowych na tabelę danych docelowych.

Sprawdzanie źródła i wypełnianie mappera

Przycisk menu Sprawdź źródło udostępnia dodatkowe sposoby mapowania kolumn ze źródła na cel:

  • Wypełnij obie tabele mapowania: propaguje wszystkie wartości z tabeli danych źródłowych do tabeli danych docelowych. Jest to ustawienie domyślne.
  • Wypełnij tylko tabelę mapowania źródła: mapuje wszystkie wartości wyłącznie w tabeli danych źródłowych. Jest to przydatne przy modyfikowaniu istniejącego przepływu pracy, gdy zmieniła się struktura kolumn źródłowych.
  • Wypełnij tylko tabelę mapowania celu: propaguje wszystkie wartości wyłącznie do tabeli danych docelowych.

Jeśli opcje kolumn źródłowych i docelowych nie wystarczą, kolejne kolumny można dodać do tabeli danych docelowych na kilka sposobów:

  • Propaguj wszystko wstawia wszystkie kolumny źródłowe do tabeli danych docelowych, niezależnie od tego, czy już w niej istniały.
  • Propaguj zaznaczone wstawia tylko zaznaczone kolumny źródłowe.
  • Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Wstaw wiersz, aby wstawić wiersz bezpośrednio nad aktualnie zaznaczonym wierszem.
  • Kliknij prawym przyciskiem myszy po stronie docelowej i wybierz Dołącz wiersz, aby wstawić wiersz na dole (z prawej strony) tabeli danych docelowych.

Usuwanie kolumn

Aby usunąć kolumny z tabeli danych docelowych, zaznacz wybrane kolumny, kliknij prawym przyciskiem myszy i wybierz Usuń.

Kolumny źródłowe, których nie ma już na liście

Wiersz docelowy może wskazywać Kolumnę źródłową, której tabela danych źródłowych już nie zawiera, na przykład po ponownym sprawdzeniu źródła. Krok nigdy sam nie usuwa takiego wiersza. Zamiast tego nazwa kolumny jest wyświetlana na czerwono, za znakiem ostrzegawczym ⚠, a po najechaniu na nią kursorem pojawia się informacja, że kolumny nie ma wśród kolumn źródłowych. W kroku z kilkoma tabelami, takim jak unia, każda tabela jest sprawdzana względem własnych kolumn źródłowych.

Wiersz ze Stałą, Wyrażeniem lub podsumowaniem Liczba (z wartościami null) nigdy nie jest oznaczany, ponieważ krok nie odczytuje jego kolumny źródłowej. Nic nie jest oznaczane, dopóki tabela danych źródłowych nie zawiera żadnych kolumn, na przykład przed pierwszym sprawdzeniem źródła.

Podczas zapisywania kroku, który nadal ma oznaczone wiersze, okno Znaleziono nieaktualne kolumny wyświetla je pod kartą lub tabelą, do której należą, i oferuje trzy opcje:

  • Usuń wszystkie i zapisz — usuń oznaczone wiersze, a następnie zapisz.
  • Zapisz mimo to — zapisz krok bez zmian.
  • Anuluj — wróć do kroku bez zapisywania.

Aby zachować wiersz i usunąć jego ostrzeżenie, dodaj kolumnę z powrotem do tabeli danych źródłowych albo wybierz kolumnę, którą ta tabela zawiera.

Typ danych kolumny

Każda kolumna docelowa ma Typ. Kolumna propagowana ze źródła zachowuje typ kolumny źródłowej; dodany ręcznie wiersz ma początkowo typ Tekst, a w polu Typ określasz, czym kolumna ma faktycznie być — kolumna, którą zamierzasz sumować lub sortować, wymaga typu liczbowego albo daty, ponieważ tekst jest sortowany i sumowany jako tekst.

Krok zapisany z kolumną bez żadnego typu nadal się uruchamia. Typ jest ustalany w chwili rozpoczęcia kroku na podstawie kolumny źródłowej, którą ta kolumna odczytuje. Jeśli nie ma z czego go odczytać, traktowany jest jako tekst: kolumny kroku Wyodrębnij SQL pochodzą z napisanego przez Ciebie zapytania, a nie z zmapowanego źródła, a gdy kilka źródeł zawiera kolumnę o tej samej nazwie, lecz o niezgodnych typach, używany jest tekst zamiast zgadywania jednego z nich — błędne odgadnięcie powoduje konwersję, którą magazyn danych może odrzucić, a wszystko można przekonwertować na tekst.

Samodzielne ustawienie pola Typ nadal jest sposobem na określenie, czym kolumna ma być. Pozostawienie go nieustawionego oznacza zgodę na to, czym akurat jest kolumna źródłowa.

Zmiana kolejności kolumn

Aby zmienić kolejność kolumn w tabeli danych docelowych, zaznacz wybrane kolumny. Możesz użyć jednej z poniższych metod:

  • Strzałki przenoszenia zbiorczego: wybierz odpowiednią opcję przenoszenia za pomocą strzałek w prawym górnym rogu
  • Menu kontekstowe: kliknij prawym przyciskiem myszy i wybierz Przenieś na początek, Przenieś w górę, Przenieś w dół lub Przenieś na koniec.

Ograniczanie wyniku do unikalnych rekordów

Aby zwrócić tylko unikalne wartości, wybierz opcję menu Unikalne. Spowoduje to wyświetlenie zestawu pól wyboru dla każdej kolumny źródła. Wystarczy zaznaczyć pole obok odpowiedniej kolumny, aby zwrócić tylko unikalne wyniki.

W zależności od sytuacji warto rozważyć zastosowanie podsumowania.

Proces usuwania duplikatów zachowuje pierwszy znaleziony unikalny rekord, a pozostałe odrzuca. Jeśli spójność między uruchomieniami jest ważna, warto zastosować sortowanie danych.

Agregacja i grupowanie

Aby agregować wyniki, wybierz opcję menu Podsumuj. Spowoduje to wyświetlenie zestawu pól wyboru dla każdej kolumny w tabeli danych docelowych. Wybierz odpowiednią metodę podsumowania dla każdej kolumny.

Gdy Sprawdź źródło wypełnia kolumny, kolumna liczbowa zaczyna jako Grupuj według zamiast Suma, jeśli jej nazwa wygląda na identyfikator, na przykład id, customer_id, Order No lub CustomerKey, jeśli jej tabela ustawia ją jako klucz albo jeśli złączenie używa jej jako klucza.

  • Grupuj według
  • Suma
  • Min
  • Maks
  • Pierwsza
  • Ostatnia
  • Liczba
  • Liczba (z wartościami null)
  • Średnia
  • Odchylenie standardowe
  • Odchylenie standardowe z próby
  • Odchylenie standardowe z populacji
  • Wariancja
  • Wariancja z próby
  • Wariancja z populacji
  • Zaawansowane bez grupowania

Informacje o zaawansowanym użyciu Data Mapper, takim jak wyrażenia, czyszczenie i stałe, znajdziesz w artykule Zaawansowane użycie Data Mapper

Wiersz tabeli Join Map lub Docelowe kolumny wyjściowe może wskazywać kolumnę, której karta Kolumny źródłowe kroku już nie wymienia, na przykład po ponownym sprawdzeniu kolumn źródła. Krok nigdy nie usuwa takiego wiersza automatycznie. Zamiast tego nazwa kolumny jest wyświetlana na czerwono za znakiem ostrzegawczym ⚠, a po najechaniu na nią kursorem zobaczysz, na której liście źródła brakuje kolumny.

Wiersz tabeli Docelowe kolumny wyjściowe z podsumowaniem Stała, Wyrażenie lub Liczba (z wartościami null) nigdy nie jest oznaczany, ponieważ krok nie odczytuje kolumny źródłowej tego wiersza. Nic nie jest sprawdzane względem źródła, którego lista jest pusta, na przykład takiego, którego nigdy nie sprawdzano.

Gdy zapisujesz krok, który nadal ma oznaczone wiersze, okno dialogowe Znaleziono nieaktualne kolumny wymienia je według tabeli i oferuje trzy wybory:

  • Usuń wszystkie i zapisz — usuwa oznaczone wiersze, a następnie zapisuje.
  • Zapisz mimo to — zapisuje krok bez zmian.
  • Anuluj — wraca do kroku bez zapisywania.

Aby zachować wiersz i usunąć jego ostrzeżenie, dodaj kolumnę z powrotem do listy tego źródła na karcie Kolumny źródłowe albo wybierz kolumnę, którą lista zawiera.

Podczas zapisywania każda tabela źródłowa jest też sprawdzana w jej obecnym stanie. Kolumna, którą lista źródła zawiera, a jej tabela nie ma, otwiera okno dialogowe Brakujące kolumny źródłowe z nazwą tabeli i kolumny oraz opcjami Zapisz mimo to lub Anuluj. Gdy oznaczone są także wiersze, oba komunikaty pojawiają się razem w oknie dialogowym Znaleziono nieaktualne kolumny. Zobacz Kolumny brakujące w tabeli źródłowej.

Złączenie anty zwraca kolumny wyłącznie ze źródła A, więc wiersz w sekcji Docelowe kolumny wyjściowe pobrany ze źródła B jest również oznaczany, nawet jeśli źródło B wymienia tę kolumnę.

Table Data Filters

Aby zapewnić maksymalną elastyczność, filtry danych są dostępne zarówno dla danych źródłowych, jak i docelowych. W przypadku większych zbiorów danych szczególnie korzystne może być odfiltrowanie wierszy już na źródle, aby pozostałe operacje były wykonywane na mniejszym zbiorze danych.

Wybierz podzbiór danych

Ten typ filtru umożliwia filtrowanie przychodzących danych źródłowych na podstawie określonych warunków.

Zastosuj filtr wtórny do danych wynikowych

Ten typ filtru umożliwia zastosowanie filtru do danych wynikowych po transformacji na podstawie określonych warunków. Możliwość zastosowania filtru do wyniku po transformacji pozwala na wykluczenia oparte na wynikach złożonych obliczeń, podsumowań lub funkcji okienkowych.

Końcowe wycinanie tabeli danych (limit)

Wycinanie wierszy umożliwia ograniczenie liczby wierszy w zbiorze wynikowym na podstawie zakresu i punktu początkowego.

Składnia filtrów

Składnia filtrów korzysta z Python SQLAlchemy, czyli tej samej składni, która obowiązuje w innych wyrażeniach.

Przykłady i funkcje wyrażeń znajdziesz w obszarze Wyrażenia.