Joins zwischen Tabellen herstellen

Mit Beziehungen zwischen Tabellen können Sie leistungsfähigere Abfragen erstellen. In QUERY werden Beziehungen oder Joins beim Hinzufügen mehrerer Tabellen zum Abfragegenerator-Bereich automatisch erstellt, wenn ein Link zu Primärschlüsseln oder einer Prüftabelle zwischen den Tabellen besteht.

Um die Wiedergabezeit für Mehrtabellen-Joins zu verbessern, wenn Kriterien auf ein Feld in der Tabelle angewendet werden, dann werden diese Kriterien auch auf das Feld der anderen Tabellen des Joins angewendet. Aus diesem Grund wird der Join nur zwischen den gefilterten Datensätzen der Tabellen hergestellt, nicht zwischen ganzen Tabellen.

Primärschlüssel-Links und Prüftabellen-Links

Von einem Prüftabellen-Link spricht man, wenn zwei Tabellen durch Fremdschlüsselfelder verbunden werden. In einer Tabelle werden einige Felder als Primärschlüssel einer anderen Tabelle, der so genannten Prüftabelle, zugewiesen.

Ein Primärschlüssel-Join ist möglich, wenn die Primärschlüssel in den Tabellen denselben Feldnamen und dieselbe Feldgröße haben und ihr Datentyp identisch ist. Der Primärschlüssel wird mit einem Schlüsselsymbol angezeigt. Indexe werden mit einem blauen umgedrehten Schlüssel index key angezeigt.

Primärschlüssel und Indexschlüssel standardmäßig zusammenführen

Wenn ein Primärschlüssel und ein Indexschlüssel übereinstimmende Datenfelder haben, erstellt die Anwendung automatische Joins zwischen dem Primärschlüssel und dem Indexschlüssel. Die Tabellen müssen denselben Feldnamen und dieselbe Feldgröße enthalten sowie denselben Datentyp aufweisen.

HINWEIS: Beim Verknüpfen von Primärschlüsseln werden Indexschlüssel nicht automatisch zusammengeführt

Vom Benutzer erstellte Joins

In QUERY können Sie Joins erstellen und entfernen, wenn Sie vom Administrator die Berechtigung dazu erhalten haben. Zusätzlich zum Erstellen von Joins in regulären Tabellen können Sie Cluster- und Pool-Tabellen sowie Views zusammenführen. Sie können eine Tabelle auch mit sich selbst verknüpfen.

Der Administrator muss für sämtliche Joins eine Berechtigung erteilen. Weitere Informationen hierzu finden Sie unter Administratoroptionen.

Erstellen eines Joins zwischen zwei Tabellen

Alle Downloads aus zusammengeführten Tabellen erfolgen über einen inneren Join. Alle übereinstimmenden Datensätze werden heruntergeladen.

Wichtig: Bei Verwendung mehrerer Tabellen müssen diese verknüpft sein. Wenn die in der Abfrage enthaltenen Tabellen nicht verknüpft sind, wird die Abfrage nicht ausgeführt.

Verknüpfen einer Tabelle mit sich selbst

  1. Doppelklicken Sie zweimal auf die Tabelle, um die Tabelle und ihr Alias zum Abfragegenerator-Bereich hinzuzufügen. Wenn die Tabelle beispielsweise den Namen MARA aufweist, heißt ihr Alias MARA1.
  2. Zum Erstellen des Joins ziehen Sie ein Feld oder Alias aus der Tabelle, und legen es im Alias bzw. in der Tabelle ab.

Alle Downloads aus zusammengeführten Tabellen erfolgen über einen inneren Join. Alle übereinstimmenden Datensätze werden heruntergeladen.

Left Outer Joins

Im QUERY Generator können Sie Left Outer Joins erstellen. Mit Left Outer Joins werden Daten aus einer Tabelle ausgegeben, auch wenn es dafür keine übereinstimmenden Datensätze in der zweiten Tabelle gibt. Hinweis: Outer Joins können sich negativ auf die Leistung auswirken.

Erkennen von Left Outer Joins in Winshuttle QUERY

Left Outer Joins sind in QUERY an der Join-Linie zu erkennen, die einen auf die linke Tabelle zeigenden Pfeil hat.

Wenn zwei Tabellen mit Left Outer Joins hinzugefügt werden, wird der Zusammenführungspfeil möglicherweise nicht angezeigt. Dies wirkt sich jedoch nicht auf die Funktion des Joins aus.

In Left Outer Join umwandeln

  1. Klicken Sie im QUERY Generator mit der rechten Maustaste auf den Join zwischen den Tabellen.
  2. Klicken Sie im Kontextmenü auf In Left Outer Join umwandeln.

    Es wird eine Warnmeldung angezeigt, die angibt, dass sich die Umwandlung in einen Left Outer Join negativ auf die Leistung auswirken kann.

Entfernen eines Outer Joins bzw. Umwandeln eines Outer Joins

  1. Klicken Sie mit der rechten Maustaste auf den Left Outer Join.
  2. Klicken Sie im Kontextmenü auf Entfernen oder auf In INNER Join umwandeln.

Bedingungen zum Erstellen von Left Outer Joins

Löschen eines Joins

Falsch zugeordnete Joins

Winshuttle Query ermöglicht sowohl Joins zwischen indizierten und nicht indizierten Feldern als auch zwischen Feldern mit unterschiedlicher Zeichenlänge. Allerdings müssen die Informationstypen, Materialien, Zahlen, Organisationseinheiten usw. gleich sein. Joins zwischen anderen nicht zugeordneten Feldern können zulässig sein, allerdings können keine Daten extrahiert werden. In solchen Fällen wird in Query eine Warnmeldung angezeigt, dass keine Daten über den Join heruntergeladen werden können.

Die Verknüpfung von Tabellen und Feldern kann für Ihr Unternehmen auch von einem Winshuttle Administrator in Winshuttle Central deaktiviert oder aktiviert werden.

Mit InfoSets- und SAP-Abfragen zusammenführen

Sie können jeweils nur eine InfoSet-/SAP-Abfrage im Abfragengenerator verwenden. Die Verknüpfung von mehr als einer InfoSet-/SAP-Abfrage mit Tabellen wird nicht unterstützt.