Verbinden von Tabellen

Konzept-Informationen

DEFINE RELATION-Befehl

Das Herstellen einer Beziehung zwischen Tabellen ermöglicht es Ihnen, bis zu 18 Analytics-Tabellen mit verschiedenen Datensatzstrukturen zu kombinieren, auf Daten mit jeder beliebigen Kombination aus Feldern in den zugehörigen Tabellen zuzugreifen und diese zu analysieren, als ob sie in einer einzelnen Tabelle vorhanden wären.

Datensatzstrukturen unterscheiden sich, wenn sie ein oder mehrere unterschiedliche Felder (Datenelemente) aufweisen. Eine Beziehung ist eine gute Wahl für informative Arbeit, die ein schnelles Bild über Datenzuordnungen über mehrere physische Tabellen hinweg erfordert, oder um Codes mit entsprechenden vollständigen Namen vor dem Erzeugen von Berichten zu verknüpfen.

Beispiel

Szenario

Sie möchten einen Vertriebsbericht erstellen, der Einzelheiten über Kunden und verkaufte Produkte für den Monat März enthält. Die Daten sind jedoch auf drei Tabellen verteilt.

Ansatz

Sie verbinden die Kundenstammtabelle mit der Tabelle „Bestellungen“ und die Tabelle „Bestellungen“ mit der Produktstammtabelle. Dadurch erstellen Sie einen temporären Zusammenhang von Tabellen, die alle für den Bericht benötigten Informationen enthalten.

  • Kundenname und Ort aus der Kundenstammtabelle
  • Bestellungseinzelheiten aus der Tabelle „Bestellungen“
  • Produkteinzelheiten aus der Tabelle „Produktstamm“

Durch eine Beziehung entsteht eine „virtuelle“ Tabelle.

Das Ergebnis einer Beziehung von Tabellen ist virtuell – die zugehörigen Tabellen bleiben unabhängig und die Beziehung kann jederzeit aufgehoben werden.

Im Gegensatz zum Zusammenführen oder Mischen, wird durch das Verbinden keine neue Tabelle erstellt. Stattdessen werden die Felder in den verbundenen oder untergeordneten Tabellen in der übergeordneten Tabelle verfügbar, aus der die Beziehung erstellt wurde.

Falls erforderlich können Sie eine separate Operation durchführen und eine beliebige Kombination von Feldern aus den übergeordneten und untergeordneten Tabellen in eine neue Tabelle extrahieren.

Beziehung zwischen Tabellen über ein gemeinsames Schlüsselfeld herstellen

Sie verbinden Tabellen über ein gemeinsames Schlüsselfeld, also ein Datenelement wie Mitarbeiternummer, Lieferanten-ID oder Adresse, das in beiden Tabellen enthalten ist. Wenn identische Werte in den Schlüsselfeldern vorhanden sind, ist das Ergebnis eine Übereinstimmung, die einzelne Datensätze aus den separaten Tabellen verbindet. Teilweise Übereinstimmungen werden durch den einfachen Befehl des Verbindens nicht unterstützt.

Die Schlüsselfelder in den zu verbindenden Tabellen weisen einige Voraussetzungen auf:

Eigenschaften des Schlüsselfelds Anforderung
Datenelement Muss identisch sein. Beide Schlüsselfelder sind beispielsweise Felder mit einer Mitarbeiternummer.
Datentyp

Die Schlüsselfelder können jeden beliebigen Datentyp aufweisen, müssen jedoch gegenseitig denselben Datentyp besitzen. Ein Beispiel wären zwei Zeichenfelder.

Die Datumzeit-Untertypen (Datum, Datumzeit und Zeit) können sich nur auf denselben Untertyp beziehen.

Feldtyp Es kann sich um physische Felder oder Kalkulationsfelder handeln.
Feldname Kann unterschiedlich sein.
Startposition Kann unterschiedlich sein.
Feldlänge

Muss identisch sein.

Ausrichtung und Groß-/Kleinschreibung in Zeichenfeldern Muss identisch sein.

Über- und untergeordnete Tabellen sowie Schlüsselfelder

Bei der Herstellung einer Beziehung werden die Tabellen und Schlüsselfelder basierend auf der Reihenfolge beim Hinzufügen der Tabellen zur Beziehung als übergeordnet bzw. untergeordnet bezeichnet:

  • übergeordnete Tabelle – die erste hinzugefügte Tabelle (wird automatisch hinzugefügt, wenn Sie eine Tabelle öffnen und die Operation "Verbinden" starten)
  • übergeordnetes Schlüsselfeld – das aus der übergeordneten Tabelle ausgewählte Schlüsselfeld
  • untergeordnete Tabelle – die zweite hinzugefügte Tabelle sowie jede darauf folgende hinzugefügte Tabelle
  • untergeordnetes Schlüsselfeld – das aus untergeordneten Tabellen ausgewählte Schlüsselfeld

Sie können übergeordnete und untergeordnete Tabellen sowie Schlüsselfelder frei wählen. Die Beziehung ist jedoch nur dann erfolgreich, wenn die Schlüsselfelder den Anforderungen für die Beziehung entsprechen.

Weitere Informationen finden Sie unter Über Schlüsselfelder.

Zugriff auf untergeordnete Tabellenfelder

Sobald eine Beziehung hergestellt ist, können Sie Felder von einigen der untergeordneten Tabellen zu der übergeordneten Ansicht hinzufügen, obwohl dies keine Voraussetzung ist. Sie können untergeordnete Tabellenfelder anhand der übergeordneten Tabelle analysieren und auf diese zugreifen. Dies geschieht mithilfe der Dropdown-Liste Aus Tabelle in den Analytics-Dialogfeldern sowie mithilfe des Ausdruck-Generators und unabhängig davon, ob Sie diese zur übergeordneten Ansicht hinzugefügt haben.

Untergeordnete Tabellenfelder, auf die über die übergeordnete Tabelle zugegriffen wird, werden im Format tabellenname.feldname angezeigt, um zu kennzeichnen, aus welcher Tabelle die Felder stammen. Sie können auf verbundene Tabellen nur über die übergeordnete Tabelle zugreifen, nicht über eine untergeordnete Tabelle; dasselbe gilt für das Ändern von Beziehungen.

Sortieren und Indizieren von verbundenen Tabellen

Die virtuelle Tabelle, die sich aus einer Beziehung ergibt, verwendet die vorhandene Sortierfolge der übergeordneten Tabelle. Sie müssen das Schlüsselfeld der übergeordneten Tabelle vor dem Verbinden von Tabellen nicht sortieren oder indizieren. Eventuell entscheiden Sie sich doch dafür, da während des Bestehens einer Beziehung keine Option zum Vorsortieren für die übergeordnete Tabelle verfügbar ist.

Als Teil der internen Funktion des Befehls "Verbinden" werden die Schlüsselfelder der untergeordneten Tabelle in aufsteigender Reihenfolge automatisch indiziert. Diese untergeordneten Tabellenindizes bleiben auch nach Aufheben der Beziehung der untergeordneten Tabellen bestehen und können gegebenenfalls manuell gelöscht werden.

Zusätzliche Informationen zum Verbinden

Die folgende Tabelle enthält zusätzliche Informationen zum Verbinden.

Funktionsbereich

Details

Datensatzabgleich

Das Verbinden eines Tabellenpaares ist die logische Entsprechung des Zusammenführen mithilfe der Option Alle Primärdatensätze – d.h. mithilfe des Typs "n:1-Zusammenführung", der übereinstimmende Primär- und Sekundärdatensätze (übergeordnete und untergeordnete Datensätze) umfasst, sowie nicht übereinstimmende Primärdatensätze.

Wie bei den n:1-Zusammenführungen gleicht der Befehl "Verbinden" übergeordnete Schlüsselwerte ausschließlich mit der ersten Instanz eines übereinstimmenden untergeordneten Schlüsselwerts ab. Wenn zusätzliche Instanzen eines übereinstimmenden untergeordneten Schlüsselwerts vorhanden sind, werden diese ignoriert. Sie müssen dieses Verhalten bei der Planung Ihrer Tabellenbeziehungen in Betracht ziehen, insbesondere, wenn eine untergeordnete Tabelle mehrere gültige Instanzen eines übereinstimmenden Schlüsselwerts enthält. Eine mögliche Lösung besteht darin, die Beziehung der zwei Tabellen umzukehren, sodass das untergeordnete Element zum übergeordneten wird, und umgekehrt.

Nicht übereinstimmende Datensätze und fehlende Feldwerte

Wenn ein übergeordneter Schlüsselwert keine Übereinstimmung in einer verbundenen untergeordneten Tabelle besitzt, zeigt Analytics ein Leerfeld in Zeichen- und Datumzeitfeldern an, eine Null in numerischen Feldern und ein „F“ in logischen Feldern.

Duplikate oder Leerfelder im Schlüsselfeld einer untergeordneten Tabelle

Wenn Duplikate oder fehlende Werte in einem Schlüsselfeld einer untergeordneten Tabelle die nachfolgende Analyse ungültig machen, stellt die Vorverarbeitung der untergeordneten Tabelle in manchen Situationen ein mögliche Lösung dar, um Duplikate und/oder Leerfelder zu entfernen.

Extrahieren von Daten aus verbundenen Tabellen

Beim Extrahieren von Daten aus verbundenen Tabellen stehen Ihnen zwei Optionen zur Verfügung:

  • Mithilfe der Option Ansicht oder Felder im Dialogfeld Extrahieren können Sie bestimmte oder alle Daten aus den übergeordneten und untergeordneten Tabellen in eine neue Analytics-Tabelle extrahieren. Die neue Tabelle ist nicht länger mit anderen Tabellen verbunden.

    Falls Sie die Option Ansicht verwenden, müssen Sie zuerst die entsprechenden Daten der untergeordneten Tabelle zur übergeordneten Ansicht hinzufügen.

  • Mithilfe der Option Datensatz im Dialogfeld Extrahieren können Sie die Daten aus der übergeordneten Tabelle in eine neue Analytics-Tabelle extrahieren. Die neue Tabelle behält die Beziehungen der ursprünglichen übergeordneten Tabelle bei. Die Option Datensatz bietet keine Unterstützung für das Extrahieren von untergeordneten Tabellendaten.

Identische Schlüsselfeld-Länge nicht zwingend erforderlich

In Analytics sind identische Längen für die gemeinsamen Schlüsselfelder in übergeordneten und untergeordneten Tabellen nicht zwingend erforderlich.

Es wird empfohlen, stets Felder mit identischen Längen zu verwenden und die Längen vor dem Verbinden gegebenenfalls manuell zu harmonisieren. Ergebnisse, die aus dem Verbinden von Schlüsselfeldern mit verschiedenen Längen resultieren, sind nicht zuverlässig.

Datumzeit-Schlüsselfelder können verschiedene Längen aufweisen, da Analytics beim Durchführen von Operationen, die Datum-, Datumzeit- oder Zeitwerte umfassen, ein internes Analytics-Datumzeitformat verwendet.

Ändern des Schlüsselfeld-Datentyps

Sie können den Datentyp eines übergeordneten oder untergeordneten Schlüsselfeldes nicht ändern, während es verwendet wird, um Tabellen zu verbinden. Wenn Sie den Datentyp eines Feldes ändern müssen, müssen Sie zunächst die Beziehung löschen. Wenn die Änderung untereinander unterschiedliche Datentypen zur Folge hat, können Sie die zwei Felder nicht mehr verwenden, um Tabellen zu verbinden.

Vermeiden von bedingten Indizes

Verwenden Sie für Schlüsselfelder einer untergeordneten Tabelle keinen bedingten Index. Setzen Sie stattdessen Bedingungen ein, wenn Sie Operationen für eine übergeordnete Tabelle und deren verbundene Tabelle(n) durchführen.

Das Verwenden bedingter Indizes beim Erstellen von Beziehungen kann unbeabsichtigte Datenlücken an verschiedenen Punkten innerhalb einer relationalen Hierarchie verursachen. Die sicherere Methode besteht darin, Beziehungen zu erstellen, die ein entsprechend der Vorgabe der Beziehung möglichst vollständiges Dataset darstellen und anschließend gegebenenfalls Bedingungen anzuwenden.

Einschränkungen bezüglich des Speicherortes für verbundene Tabellen

Um verbunden zu werden, müssen sich Tabellen im selben Analytics-Projekt befinden. Servertabellen müssen sich auf demselben Server befinden und über dasselbe Serverprofil aufgerufen werden. Sie können eine lokale Tabelle nicht mit einer Servertabelle verbinden.

Harmonisieren von Ausrichtung und Groß-/Kleinschreibung

Wenn Sie Tabellenpaare mithilfe von Zeichenschlüsselfeldern verbinden, müssen Ausrichtung und Groß-/Kleinschreibung übereinstimmen:

  • Beide Schlüsselfelder müssen dieselbe Ausrichtung aufweisen. Verwenden Sie die Funktion LTRIM( ), um führende Leerstellen aus den Schlüsselfeldern zu entfernen.

  • Beide Schlüsselfelder müssen dieselbe Groß-/Kleinschreibung aufweisen – GROSSBUCHSTABEN, kleinbuchstaben oder herkömmliche Groß-/Kleinschreibung. Passen Sie die Groß-/Kleinschreibung mit den Funktionen UPPER( ), LOWER( ) oder PROPER( ) an.

Verbinden von UTC-basierten und Nicht-UTC-Daten

Ein UTC-basiertes und ein Nicht-UTC-Datumzeit-Schlüsselfeld können zum Herstellen einer Beziehung von zwei Tabellen verwendet werden (UTC ist die Coordinated Universal Time, die Uhrzeit an dem nullten Längengrad). Bei der Durchführung von Operationen mit Datumzeiten oder Zeiten verwendet Analytics ein internes Analytics-Datumzeitformat, sodass die folgenden Datumzeiten als identisch betrachtet werden:

  • UTC-basiert – 31.12.2014 10:30:15-05:00

  • Nicht-UTC – 31.12.2014 15:30:15

Sie sollten vorsichtig sein, falls Sie UTC-basierte und Nicht-UTC-Zeitdaten in einer Analytics-Operation verwenden. Obwohl Analytics die zwei obigen Zeitwerte als identisch betrachtet, ist dies logisch nicht sinnvoll, weil ein Wert auf eine Zeitzone Bezug nimmt und der andere Wert nicht. Weitere Informationen über UTC finden Sie unter Datums- und Uhrzeitoptionen.