Zum Inhalt springen

Der Schritt Table Anti Join liefert die nicht übereinstimmenden Elemente zwischen zwei Tabellen. Er gibt die Elemente der ersten Tabelle zurück, die in der zweiten Tabelle keinen Treffer haben. Das ist sehr nützlich, um festzustellen, welche Datensätze in einer Tabelle vorhanden sind, in einer anderen aber nicht.

Dieser Vorgang ließe sich auch mit Outer Joins und einem Filter auf Nullwerte im Join erreichen; die Anti-Join-Transformation erledigt ihn jedoch effizienter und nachvollziehbarer.

Nur Akein Treffer in BTabelle B
Anti-Join — behält nur die Zeilen von Quelle A, die in Quelle B keinen Treffer haben (ein linksausschließender Join). Die Ausgabespalten stammen nur aus A; B liefert die Schlüssel, gegen die geprüft wird.

Tabellenquelle

Geben Sie die Quelldatentabelle an, indem Sie sie im Dropdown-Menü auswählen.

Quellspalten

Geben Sie hier die Spalten an, die einbezogen werden sollen. Über die Schaltflächen Quelle untersuchen und Quellzuordnungstabelle füllen werden diese Spalten für die Join-Operation verfügbar.

Teilmenge der Quelldaten auswählen

Zur Auswahl einer Teilmenge der Daten ist jeder gültige Python-Ausdruck zulässig. Weitere Details und Beispiele finden Sie unter Ausdrücke.

Tabellenquelle

Wählen Sie Auch zur Laufzeit benannte Spalten übernehmen, um jede Quellspalte, die der Schritt nicht aufführt, unverändert so durchzureichen, wie die Tabelle sie bei der Ausführung des Schritts hat. Verwenden Sie die Option, wenn ein vorheriger Schritt, etwa ein Pivot, Spalten erzeugt, deren Namen von den Daten abhängen und die Sie deshalb beim Erstellen des Schritts nicht aufführen können. Lassen Sie sie ausgeschaltet, um nur die von Ihnen aufgeführten Spalten zu schreiben.

Zieltabelle

Zieltabelle

Um die Zieltabelle festzulegen, wählen Sie entweder über die Dropdown-Liste Zieltabelle eine vorhandene Tabelle als Ziel oder klicken auf das grüne „+“, um eine neue Tabelle als Ziel zu erstellen.

Tabelle erstellen

Beim Erstellen einer neuen Tabelle können Sie wählen, ob sie als Ansicht oder als Tabelle erstellt wird.

Ansichten:

Ansichten sind nützlich, weil die Ausführungszeit eines Schritts deutlich kürzer ist als bei einer Tabelle. Der Nachteil von Ansichten ist, dass sie sich in der Detailansicht der Tabelle weniger gut zur Datenexploration eignen.

Tabellen:

Wenn eine Tabelle als Ziel verwendet wird, dauert die Ausführung eines Schritts länger, dafür ist die Datenexploration in der Detailansicht deutlich schneller als bei einer Ansicht.

Table Join Map

Legen Sie die Join-Bedingungen fest. Erraten füllt die Join Map mit der ersten der folgenden Möglichkeiten, die sich aus den Spalten der beiden Tabellen ergibt:

  • die Schlüssel eines anderen Join-Schritts in diesem Projekt, der dieselben beiden Tabellen verknüpft
  • die Schlüssel einer genehmigten Kennzahl, die sie verknüpft
  • die Schlüsselspalten, die für eine der Tabellen festgelegt sind, nach Namen in der anderen Tabelle zugeordnet
  • die Spalten mit demselben Namen in Tabelle 1 und Tabelle 2
  • Spalten, deren Namen sich nur in der Groß-/Kleinschreibung oder durch Unterstriche unterscheiden, oder eine Spalte id, die einer nach ihrer Tabelle benannten Spalte zugeordnet wird, etwa customer_id für eine Tabelle namens Customers

Eine Zeile unter der Zuordnung zeigt, welche Möglichkeit verwendet wurde, bis Sie die Zuordnung ändern. „Erraten“ liest die Spalten der Tabellen, nicht ihre Zeilen. Prüfen Sie daher die Schlüssel, bevor Sie speichern. Quelle untersuchen füllt eine leere Join Map auf dieselbe Weise.

Um weitere Spalten manuell hinzuzufügen, klicken Sie an einer beliebigen Stelle im Bereich mit der rechten Maustaste und wählen Sie Zeile einfügen oder Zeile anhängen, um eine Zeile vor der aktuell ausgewählten Zeile bzw. am Ende einzufügen. Geben Sie dann die Spaltennamen ein, die Tabelle 1 und Tabelle 2 zugeordnet werden sollen. Um ein Feld aus der Join Map zu entfernen, klicken Sie mit der rechten Maustaste und wählen Löschen.

Data-Mapper-Konfiguration

Tabellen-Data-Mapper

Der Data Mapper ordnet Spalten der Quelldaten der Zieldatentabelle zu.

Untersuchen und Füllen des Mappers

Mit der Menüschaltfläche Quelle untersuchen stehen Ihnen weitere Möglichkeiten zur Verfügung, Spalten von der Quelle dem Ziel zuzuordnen:

  • Beide Zuordnungstabellen füllen: Übernimmt alle Werte aus der Quelldatentabelle in die Zieldatentabelle. Dies ist die Standardeinstellung.
  • Nur Quellzuordnungstabelle füllen: Ordnet nur alle Werte in der Quelldatentabelle zu. Das ist hilfreich, wenn Sie einen bestehenden Workflow ändern und sich die Spaltenstruktur der Quelle geändert hat.
  • Nur Zielzuordnungstabelle füllen: Übernimmt alle Werte nur in die Zieldatentabelle.

Reichen die Optionen für Quell- und Zielspalten nicht aus, können Sie auf verschiedene Weise weitere Spalten in die Zieldatentabelle einfügen:

  • Alle übernehmen fügt alle Quellspalten in die Zieldatentabelle ein, unabhängig davon, ob sie dort bereits vorhanden sind.
  • Ausgewählte übernehmen fügt nur die ausgewählten Quellspalten ein.
  • Klicken Sie mit der rechten Maustaste auf die Zielseite und wählen Sie Zeile einfügen, um direkt über der aktuell ausgewählten Zeile eine Zeile einzufügen.
  • Klicken Sie mit der rechten Maustaste auf die Zielseite und wählen Sie Zeile anhängen, um am unteren Ende (ganz rechts) der Zieldatentabelle eine Zeile einzufügen.

Spalten löschen

Um Spalten aus der Zieldatentabelle zu löschen, wählen Sie die gewünschten Spalten aus, klicken Sie mit der rechten Maustaste und wählen Sie Löschen.

Quellspalten, die nicht mehr aufgeführt sind

Eine Zielzeile kann eine Quellspalte benennen, die die Quelldatentabelle nicht mehr aufführt, zum Beispiel nachdem die Quelle erneut untersucht wurde. Der Schritt entfernt eine solche Zeile nie von selbst. Stattdessen wird der Spaltenname rot hinter einem Warnsymbol ⚠ angezeigt, und beim Daraufzeigen erscheint der Hinweis, dass die Spalte nicht in den Quellspalten enthalten ist. Bei einem Schritt mit mehreren Tabellen, etwa einer Union, wird jede Tabelle anhand ihrer eigenen Quellspalten geprüft.

Eine Zeile mit einer Konstante, einem Ausdruck oder einer Zusammenfassung Anzahl (einschließlich Nullwerte) wird nie markiert, da der Schritt ihre Quellspalte nicht liest. Solange die Quelldatentabelle keine Spalten aufführt, wird nichts markiert, zum Beispiel bevor die Quelle zum ersten Mal untersucht wurde.

Wenn Sie einen Schritt speichern, der noch markierte Zeilen enthält, listet ein Dialog Veraltete Spalten gefunden diese unter der Registerkarte oder Tabelle auf, auf der sie sich befinden, und bietet drei Optionen:

  • Alle entfernen und speichern — die markierten Zeilen entfernen und anschließend speichern.
  • Trotzdem speichern — den Schritt unverändert speichern.
  • Abbrechen — zum Schritt zurückkehren, ohne zu speichern.

Um eine Zeile beizubehalten und ihre Warnung zu beseitigen, fügen Sie die Spalte wieder zur Quelldatentabelle hinzu oder wählen Sie eine Spalte, die die Quelldatentabelle aufführt.

Spaltendatentyp

Jede Zielspalte hat einen Typ. Eine aus der Quelle übernommene Spalte behält den Typ der Quellspalte; eine von Hand hinzugefügte Zeile beginnt als Text, und Sie legen den Typ fest, den sie tatsächlich haben soll — eine Spalte, die Sie summieren oder sortieren möchten, benötigt ihren numerischen Typ oder Datumstyp, denn Text wird als Text sortiert und summiert.

Ein Schritt, der mit einer Spalte ohne jeden Typ gespeichert wurde, wird trotzdem ausgeführt. Der Typ wird beim Start des Schritts anhand der Quellspalte ermittelt, die diese Spalte liest. Gibt es nichts, woraus er sich ablesen ließe, wird er als Text behandelt: Die Spalten eines Schritts SQL extrahieren stammen aus der von Ihnen geschriebenen Abfrage und nicht aus einer zugeordneten Quelle, und wenn mehrere Quellen dieselbe Spaltenbezeichnung mit unterschiedlichen Typen führen, wird Text verwendet, statt einen davon zu erraten — eine falsche Vermutung führt zu einer Konvertierung, die das Warehouse ablehnen kann, und alles lässt sich in Text umwandeln.

Den Typ selbst festzulegen ist weiterhin der Weg, um zu bestimmen, was eine Spalte sein soll. Lassen Sie ihn leer, übernehmen Sie, was auch immer die Quellspalte gerade ist.

Spaltenreihenfolge ändern

Um Spalten in der Zieldatentabelle neu anzuordnen, wählen Sie die gewünschten Spalten aus. Dazu haben Sie zwei Möglichkeiten:

  • Pfeile für Massenverschiebung: Wählen Sie die gewünschte Verschiebeoption über die Pfeile oben rechts aus.
  • Kontextmenü: Klicken Sie mit der rechten Maustaste und wählen Sie An den Anfang verschieben, Nach oben, Nach unten oder An das Ende verschieben.

Ergebnis auf eindeutige Datensätze beschränken

Um nur eindeutige Werte zurückzugeben, wählen Sie die Menüoption Eindeutig. Dadurch wird für jede Spalte der Quelle ein Kontrollkästchen eingeblendet. Aktivieren Sie einfach das Kontrollkästchen neben der jeweiligen Spalte, um nur eindeutige Ergebnisse zurückzugeben.

Je nach Situation kann es sinnvoll sein, stattdessen eine Zusammenfassung in Betracht zu ziehen.

Beim Eindeutig-Verfahren bleibt der erste gefundene eindeutige Datensatz erhalten, die übrigen werden verworfen. Wenn Konsistenz zwischen den Ausführungen wichtig ist, sollten Sie die Daten sortieren.

Aggregation und Gruppierung

Um Ergebnisse zu aggregieren, wählen Sie die Menüoption Zusammenfassen. Dadurch wird für jede Spalte in der Zieldatentabelle ein Auswahlfeld eingeblendet. Wählen Sie für jede Spalte eine geeignete Zusammenfassungsmethode aus.

Wenn Quelle untersuchen die Spalten füllt, beginnt eine Zahlenspalte als Gruppieren nach statt als Summe, wenn ihr Name wie ein Bezeichner aussieht, etwa id, customer_id, Order No oder CustomerKey, wenn ihre Tabelle sie als Schlüssel festlegt oder wenn der Join sie als Schlüssel verwendet.

  • Gruppieren nach
  • Summe
  • Min
  • Max
  • Erster
  • Letzter
  • Anzahl
  • Anzahl (einschließlich Nullwerte)
  • Mittelwert
  • Standardabweichung
  • Stichproben-Standardabweichung
  • Grundgesamtheits-Standardabweichung
  • Varianz
  • Stichprobenvarianz
  • Grundgesamtheitsvarianz
  • Erweitert ohne Gruppierung

Informationen zur erweiterten Nutzung des Data Mappers, etwa zu Ausdrücken, Bereinigung und Konstanten, finden Sie unter Erweiterte Nutzung des Data Mappers

Eine Zeile der Join Map oder der Zielausgabespalten kann eine Spalte nennen, die die Registerkarte Quellspalten des Schritts nicht mehr aufführt, zum Beispiel nachdem die Spalten einer Quelle erneut untersucht wurden. Der Schritt entfernt eine solche Zeile nie für Sie. Stattdessen wird der Spaltenname rot hinter einem Warnzeichen ⚠ angezeigt, und beim Daraufzeigen sehen Sie, in der Liste welcher Quelle die Spalte fehlt.

Eine Zeile der Zielausgabespalten mit einer Konstante, einem Ausdruck oder einer Zusammenfassung Anzahl (einschließlich Nullwerte) wird nie markiert, weil der Schritt die Quellspalte der Zeile nicht liest. Gegen eine Quelle mit leerer Liste, zum Beispiel eine, die nie untersucht wurde, wird nichts geprüft.

Wenn Sie einen Schritt speichern, der noch markierte Zeilen enthält, listet der Dialog Veraltete Spalten gefunden sie nach Tabelle auf und bietet drei Möglichkeiten:

  • Alle entfernen und speichern – Entfernt die markierten Zeilen und speichert dann.
  • Trotzdem speichern – Speichert den Schritt unverändert.
  • Abbrechen – Kehrt zum Schritt zurück, ohne zu speichern.

Um eine Zeile zu behalten und ihre Warnung zu beseitigen, fügen Sie die Spalte auf der Registerkarte Quellspalten wieder zur Liste dieser Quelle hinzu oder wählen Sie eine Spalte, die in der Liste enthalten ist.

Beim Speichern wird außerdem jede Quelltabelle in ihrem aktuellen Zustand geprüft. Hat die Liste einer Quelle eine Spalte, die ihre Tabelle nicht hat, öffnet sich der Dialog Fehlende Quellspalten, der die Tabelle und die Spalte nennt, mit Trotzdem speichern oder Abbrechen. Sind zusätzlich Zeilen markiert, erscheinen beide Hinweise gemeinsam im Dialog Veraltete Spalten gefunden. Siehe Spalten, die in der Quelltabelle fehlen.

Ein Anti-Join gibt nur Spalten aus Quelle A aus. Daher wird auch eine Zeile unter Zielausgabespalten, die aus Quelle B stammt, markiert, selbst wenn Quelle B die Spalte auflistet.

Table Data Filters

Für maximale Flexibilität stehen Datenfilter sowohl für die Quelldaten als auch für die Zieldaten zur Verfügung. Bei größeren Datensätzen kann es besonders vorteilhaft sein, Zeilen bereits in der Quelle herauszufiltern, sodass die übrigen Operationen auf einem kleineren Datensatz ausgeführt werden.

Teilmenge der Daten auswählen

Mit diesem Filtertyp filtern Sie die eingehenden Quelldaten anhand der angegebenen Bedingungen.

Sekundären Filter auf Ergebnisdaten anwenden

Mit diesem Filtertyp wenden Sie anhand der angegebenen Bedingungen einen Filter auf die Ergebnisdaten nach der Transformation an. Dadurch können Zeilen anhand der Ergebnisse komplexer Berechnungen, Zusammenfassungen oder Fensterfunktionen ausgeschlossen werden.

Zeilenbegrenzung der endgültigen Datentabelle (Limit)

Mit der Zeilenbegrenzung schränken Sie die Zeilen im Ergebnis anhand eines Bereichs und eines Startpunkts ein.

Filtersyntax

Die Filtersyntax nutzt Python SQLAlchemy und entspricht damit der Syntax anderer Ausdrücke.

Beispiele und Ausdrucksfunktionen finden Sie im Bereich Ausdrücke.