Joins (CX)
Informationen zu Joins
Mit Joins können Sie Zeilen aus zwei oder mehr Datenquellen basierend auf einer zugehörigen Datenspalte kombinieren, die sie teilen. Durch die Verwendung eines Joins können Sie die kombinierten Daten effizienter und effektiver sammeln und analysieren und so mehr Erkenntnisse gewinnen.
Der Datenmodellierer unterstützt nur Left-Outer-Joins.
Left-Outer-Joins verstehen
Um zu verstehen, wie ein Left Outer Join funktioniert, sehen wir uns ein Beispiel an.
Sehen Sie sich das Bild des Datensets unten an. Die erste Datenquelle oben ist unsere „linke“ Datenquelle, die zweite Datenquelle unten ist unsere „rechte“ Datenquelle.
Angenommen, diese Tabellen repräsentieren die Daten, die Sie in jeder Umfrage finden:
Filialstandorte (linke Quelle)
Standort-ID | Lokationsname |
555 | Provo |
777 | Dublin |
999 | Seattle |
1000 | Tokio |
Kundenfeedback (richtige Quelle)
Kunden-ID | Zufriedenheit (1-5) | Standort-ID |
101 | 2 | 555 |
102 | 4 | 777 |
103 | 5 | 999 |
104 | 5 | 222 |
Sie möchten die Daten basierend auf der Lokations-ID verknüpfen. Dieses Feld wird als “Join-Schlüssel” bezeichnet.
Dies sind die Daten, die für den zweiten Datensatz eindeutig sind. Dies würde entfernt werden:
Kunden-ID | Zufriedenheit (1-5) | Standort-ID |
104 | 5 | 222 |
Dies ist die endgültige Ausgabe oder alle Daten, die in Ihren Ergebnissen enthalten wären:
Standort-ID | Lokationsname | Kunden-ID | Zufriedenheit (1-5) |
555 | Provo | 101 | 2 |
777 | Dublin | 102 | 4 |
999 | Seattle | 103 | 5 |
1000 | Tokio | Null | Null |
Beachten Sie, dass die Ergebnisse von Provo, Dublin und Seattle Datenspalten sowohl aus der rechten als auch aus der linken Quelle enthalten, da diese Zeilen gemeinsame Standort-IDs haben.
In der rechten Quelle waren keine Daten für Tokio vorhanden. Daher enthält die Tokio-Zeile Nullwerte in den neuen Spalten Kunden-ID und Zufriedenheit.
Wichtigkeit eindeutiger Join-Schlüssel
Da Join-Schlüssel helfen, Zeilen zu identifizieren, die aus den linken und rechten Quellen kombiniert werden müssen, empfehlen wir, sicherzustellen, dass der verwendete Join-Schlüssel wie ein eindeutiger Identifikator fungiert. Wenn es sonst mehrere Datensätze in der rechten Quelle gibt, die mit dem Join-Schlüssel der linken Quelle übereinstimmen, wird nur einer davon nach dem Zufallsprinzip abgerufen.
Beispiel: Sehen wir uns das oben besprochene Beispiel an. Wir haben dieselbe linke Quelle. In der richtigen Quelle gibt es jedoch folgende Zeilen:
Kunden-ID | Zufriedenheit (1-5) | Standort-ID |
101 | 2 | 555 |
107 | 4 | 555 |
Im resultierenden Join wird nur eine der 555 Zeilen gesichert, aber nicht beides.
Wenn der Join-Schlüssel nicht für jeden Datensatz in einer rechten Quelle eindeutig ist und Sie alle Datensätze sowohl aus der rechten als auch aus der linken Quelle einschließen möchten, sollte stattdessen eine Union verwendet werden. Unionen rufen jeden Datensatz separat ab, anstatt die Informationszeilen zu kombinieren.
Joins anlegen
- Legen Sie ein Datenmodell an.
- Fügen Sie Ihrem Datenmodell mindestens zwei Quellen hinzu.
Tipp: Stellen Sie sicher, dass Sie alle benötigten Felder in Ihre Datenquellen aufnehmen, einschließlich des allgemeinen Felds, das Sie zum Verknüpfen Ihrer Daten verwenden (z. B. eine eindeutige ID). - Klicken Sie auf das Pluszeichen (+) neben der Datenquelle, die Sie als linke Datenquelle verwenden möchten.
- Wählen Sie Join.
- Nennen Sie die Ausgabe. Dies ist hilfreich, wenn Sie planen, Ihrem Datenset mehrere Joins hinzuzufügen.
- Wählen Sie unter Eingabe die richtige Datenquelle aus.
- Legen Sie eine Join-Bedingung an. Gleichen Sie das Feld ab, das jedes Datenset gemeinsam hat.
Beispiel: Hier ordnen wir unser Feld „Eindeutige ID“ aus jeder Datenquelle einander zu.Tipp: Felder eines beliebigen Typs können in Join-Bedingungen verwendet werden. Wir empfehlen dringend, eine eindeutige ID zu verwenden, die über beide Datenquellen hinweg übereinstimmt.
- Wenn Sie mindestens eine weitere separate Datenquelle unter den Quellen haben, denen Sie beigetreten sind, können Sie mithilfe des vorhandenen Joins einen weiteren Join anlegen.
- Sie können separate Joins im selben Datenset anlegen. In diesem Screenshot würden Sie die Daten aus Umfrage und Handlungsfähigkeit von 2022 zusammenführen, aber nicht die Top-2-Datenquellen.
- Schließen Sie das Anlegen Ihres Datenmodells mit einem Ausgabedatenset ab.
Hilfs-Joins verwenden
Mit Hilfs-Joins können Sie mehrere Quellen mit derselben Join-Bedingung verknüpfen. Daher sind sie nützlich, wenn Sie mehrere, sich überschneidende Joins mit denselben Datenquellen erstellen möchten.
Zuvor haben wir darüber gesprochen, wie Left Outer Joins mit zwei Quellen funktionieren: einer rechten Quelle und einer linken Quelle. Mit Hilfs-Joins können Sie mehrere linke Quellen für dieselbe rechte Quelle in einem Join festlegen.
Beispiel für einen Hilfs-Join
Angenommen, Sie haben eine Datenbank mit Filialstandorten, deren Namen mit IDs verknüpft sind. Sie haben 2 Jahre Umfragen, bei denen Sie Feedback zu Ihren Filialen sammeln. Im Beispiel unten finden wir die Zufriedenheitsbewertung und die Kunden-ID für 2020 und 2021 und verknüpfen sie mit einem Standortnamen.
Filialstandorte (linke Quelle)
Standort-ID | Lokationsname |
555 | Provo |
777 | Dublin |
999 | Seattle |
1000 | Tokio |
Kundenfeedback 2020 (richtige Quelle)
Kunden-ID | Zufriedenheit (1-5) | Standort-ID |
101 | 2 | 555 |
102 | 4 | 777 |
103 | 5 | 999 |
104 | 5 | 222 |
Kunden-Feedback 2021 (Quelle für Zusatzrechte)
Kunden-ID | Zufriedenheit (1-5) | Standort-ID |
656 | 5 | 1000 |
838 | 4 | 222 |
979 | 3 | 999 |
343 | 5 | 777 |
Sie verknüpfen die Daten basierend auf der Lokations-ID.
Dies ist die endgültige Ausgabe oder alle Daten, die in Ihren Ergebnissen enthalten wären:
Standort-ID | Ortsname | Kunden-ID 2020 | Zufriedenheit 2020 | Kunden-ID 2021 | Zufriedenheit 2021 |
777 | Dublin | 102 | 4 | 343 | 5 |
1000 | Tokio | k. A. | k. A. | 656 | 5 |
999 | Seattle | 103 | 5 | 979 | 3 |
555 | Provo | 101 | 2 | k. A. | k. A. |
Beachten Sie, dass Daten aus 2020 und 2021 zu separaten Spalten im selben Ausgabedatenset geworden sind.
Da 2020 keine Daten für Tokio enthielt, 2021 jedoch, sind die Spalten für 2020 für Tokio leer (N/A). Ebenso verfügte 2021 über keine Provo-Daten.
Datensätze mit der Lokations-ID “222” aus einem der beiden Jahre wurden aus der endgültigen Datenquelle ausgeschlossen, da die Filialstandortdatei keinen entsprechenden Speicherort für diese ID hatte. Eine Erläuterung, wie Daten ausgeschlossen werden, finden Sie unter Left-Outer-Joins verstehen.
Anlegen eines Hilfs-Joins
- Klicken Sie auf den Join.
- Navigieren Sie zu den Join-Einstellungen.
- Klicken Sie auf das Pluszeichen (+).
- Wählen Sie die rechte Eingabe aus.
Beispiel: Dies ist die zweite Quelle, die Sie mit Ihrer linken Quelle verknüpfen möchten. In unserem obigen Beispiel wäre dies die Kundenfeedback-Umfrage 2021. - Legen Sie die Join-Bedingung der linken Spalte fest.
- Legen Sie die Join-Bedingung der rechten Spalte fest.
Wiederholen Sie die Schritte nach Bedarf, um weitere Hilfs-Joins hinzuzufügen.
Hilfs-Joins vs. Nachfolgende Joins
Zusätzlich zu Hilfsjoins können Sie auf das Pluszeichen (+) neben Ihrem abgeschlossenen Join klicken und Join auswählen. Diese Methode wird als “nachfolgender Join” bezeichnet.
Hilfs-Joins sind in der Regel nützlich, wenn Sie mehrere überlappende Joins mit denselben Datenquellen erstellen möchten. Nachfolgende Joins sind am besten, wenn Sie einen Join mit zwei zusätzlichen Datenquellen erstellen möchten, die nicht in Ihrem ersten Join enthalten waren.
Tipp: Nachfolgende Joins sind auch nützlich, wenn Sie mehrere Joins erstellen möchten, bei denen ein zweiter Join-Schlüssel aus einer anderen Quelle abgerufen werden muss. Angenommen, Sie haben eine Umfrage mit der Filial-ID.
- Sie verwenden die Filial-ID, um diese Daten mit einer separaten Quelle mit weiteren Lokationsdaten zu verknüpfen.
- Die Lokationsdatenquelle enthält auch das Feld “Store Manager”.
- In Ihrer dritten Quelle verfügen Sie über Unternehmenshierarchieinformationen, die Sie basierend auf dem Feld “Store Manager” beitreten.
Mit dieser Methode können Umfragedaten, Standortdaten und die Unternehmenshierarchie in einem Datensatz kombiniert werden.
Es gibt jedoch Fälle, in denen Hilfs-Joins und nachfolgende Joins dieselbe Ausgabe haben können.
Beispiel: Wenn Sie in unserem obigen Beispiel die gleichen Ergebnisse erhalten, erhalten Sie dieselben Ergebnisse, wenn Sie einen nachfolgenden Join mit Lokations-ID aus Filiallokationen auf der linken Seite und der Lokations-ID 2021 auf der rechten Seite anlegen.
Wenn Sie jedoch den ersten Join anlegen, führt dies nicht zu nur einem Lokations-ID-Feld. In diesem Beispiel erhalten Sie eine Spalte für die Filialstandorte und die Customer-Feedback-Version 2020 der Lokations-ID. Wenn Sie versuchen, Ihre Daten mithilfe der Standort-ID aus dem Kunden-Feedback 2020 zusammenzuführen, weichen die Ergebnisse von denen beim Hilfs-Join ab.
Hier sehen Sie, wie diese Ergebnistabelle aussehen würde. Da 2020 keine Daten für Tokio enthält, werden die vorhandenen Daten für 2021 Tokio aus den Endergebnissen ausgeschlossen.
Standort-ID | Ortsname | Kunden-ID 2020 | Zufriedenheit 2020 | Kunden-ID 2021 | Zufriedenheit 2021 |
777 | Dublin | 102 | 4 | 343 | 5 |
1000 | Tokio | k. A. | k. A. | k. A. | k. A. |
999 | Seattle | 103 | 5 | 979 | 3 |
555 | Provo | 101 | 2 | k. A. | k. A. |