Zu Hauptinhalt springen

Join

Der join-Zusatz kombiniert die geladene Tabelle mit einer bestehenden benannten Tabelle bzw. mit der zuletzt erstellten Datentabelle.

Die Auswirkung der Verknüpfung von Daten besteht darin, die Zieltabelle durch einen weiteren Satz Felder oder Attribute zu erweitern, nämlich diejenigen, die in der Zieltabelle noch nicht vorhanden sind. Jeder gemeinsame Feldname zwischen dem Quelldatensatz und der Zieltabelle wird dazu verwendet, zu ermitteln, wie die neuen eingehenden Datensätze verknüpft werden. Dies wird in der Regel als „Natural Join“ bezeichnet. Ein QlikJoin-Vorgang kann dazu führen, dass die entstehende Tabelle mehr oder weniger Datensätze als anfänglich hat, abhängig von der Eindeutigkeit der Join-Verknüpfung und dem Typ des verwendeten Joins.

Es gibt vier Join-Typen:

Left Joins sind der üblichste Join-Typ. Wenn Sie beispielsweise einen Transaktionsdatensatz mit einem Referenzdatensatz kombinieren möchten, verwenden Sie in der Regel einen Left Join. In diesem Fall laden Sie zuerst die Transaktionstabelle, dann den Referenzdatensatz, während Sie ihn über einen Left Join-Zusatz mit der bereits geladenen Transaktionstabelle verknüpfen. Ein Left Join behält alle Transaktionen unverändert bei und fügt die ergänzenden Referenzdatenfelder hinzu, wenn eine Übereinstimmung gefunden wird.

Wenn Sie zwei Datensätze haben, bei denen Sie nur an Ergebnissen interessiert sind, wenn eine übereinstimmende Verknüpfung vorliegt, können Sie einen Inner Join verwenden. Dadurch werden alle Datensätze sowohl aus den geladenen Quelldaten als auch aus der Zieltabelle entfernt, wenn keine Übereinstimmung gefunden wird. Als Ergebnis enthält Ihre Zieltabelle dann möglicherweise weniger Datensätze als vor dem Join-Vorgang.

Wenn Sie sowohl die Zieldatensätze als auch alle eingehenden Datensätze beibehalten möchten, verwenden Sie einen Outer Join. Wo keine Übereinstimmung gefunden wird, wird jeder Satz Datensätze dennoch beibehalten, während die Felder auf der gegenüber liegenden Seite des Join unausgefüllt (null) bleiben. Für Outer Joins gibt es generell wenige Anwendungsfälle in der Praxis.

Bei diesem Join-Typ werden alle zu ladenden Datensätze beibehalten, während die Datensätze in der Zieltabelle des Join auf diejenigen reduziert werden, bei denen eine Übereinstimmung bei den eingehenden Datensätzen vorliegt. Dies ist ein Nischen-Join-Typ, der manchmal als Möglichkeit zum Verkleinern einer bereits geladenen Datensatztabelle auf einen erforderlichen Teilsatz verwendet wird.

Wenn das Schlüsselwort „type“ ausgelassen wird, ist Inner Join der Standard-Join-Typ.

Beispiel-Ergebnissätze nach verschiedenen Typen von Join-Vorgängen

Beispielergebnissätze nach verschiedenen Typen von Join-Vorgängen, mit einer Vorher-Nachher-Darstellung der Datentabellen nach jedem Vorgang.
InformationshinweisWenn die Quelle und das Ziel eines Join-Vorgangs keine gemeinsamen Feldnamen enthalten, ergibt der Join ein kartesianisches Produkt aller Zeilen – dies wird als „Cross Join“ bezeichnet.

Ergebnisbeispiel für einen „Cross Join“-Vorgang.

Vorher-Nachher-Vergleich von Eingabe- und Ausgabedaten nach einem „Cross Join“-Vorgang (der einen Join-Vorgang eines beliebigen Typs umfassen kann).

Syntax:  

[inner | outer | left | right ]Join [ (tablename ) ]( loadstatement | selectstatement )

Argumente
Argument Beschreibung
tablename Die benannte Tabelle, die mit der geladenen Tabelle verglichen wird.
loadstatementoder selectstatement Der LOAD- oder SELECT-Befehl für die geladene Tabelle.

Die folgenden Themen können Sie bei der Arbeit mit dieser Funktion unterstützen:

Verwandte Themen
Thema Beschreibung
Kombinieren von Tabellen mit Join und Keep Dieses Thema enthält weitere Erläuterungen der Konzepte von „Join“ (Verknüpfen) und „Keep“ (Beibehalten) von Datensätzen.
Keep Der Ladezusatz Keep gleicht dem Zusatz Join, kombiniert aber die Quell- und Zieldatensätze nicht. Stattdessen kürzt er jeden Datensatz entsprechend dem gewählten Vorgangstyp (Inner, Outer, Left oder Right).

Beispiel 1 – Left Join: Erweitern einer Zieltabelle mit einem Referenzdatensatz

Beispiel 2 – Inner Join: Nur Kombinieren übereinstimmender Datensätze

Beispiel 3 – Outer Join: Kombinieren von überlappenden Datensätzen

Beispiel 4 – Right Join: Kürzen einer Zieltabelle durch einen sekundären Master-Datensatz