Datenbankabfragen definieren
Zuletzt aktualisiert am 08.12.2025
Überblick
Datenbankabfragen werden verwendet, um zu definieren, welche Daten aus Ihrem BI-/Datenbanksystem in xP&A übernommen werden. Sie werden während der Einrichtung der Integration angegeben (siehe die jeweilige Einrichtungsanleitung für jedes System) und müssen auf eine bestimmte Weise strukturiert sein.
In diesem Kapitel erklären wir, wie eine Datenbankabfrage definiert wird und was bei verknüpften Dimensionen, die abgefragt werden, zu beachten ist.
Dieser Artikel enthält folgende Abschnitte:
Eine Abfrage definieren
Regeln:
- Eine Abfrage beginnt mit select.
- Eine Abfrage muss eine Datumsspalte zurückgeben.
- Eine Abfrage muss mindestens eine Wertspalte für die Variablen zurückgeben (diese können Zahlen oder Datumsangaben sein).
- Eine Abfrage kann optional Spalten für Dimensionen, Dimensionszuordnungen oder Kohorten zurückgeben.
- Verknüpfte Dimensionen müssen in folgender Form eingeschlossen werden: `from dimension > to dimension` (mit Backticks). Weitere Details zu verknüpften Dimensionen finden Sie unter Dimensionen verknüpfen sowie im folgenden Kapitel Einschränkungen und Workarounds für die Abfragen verknüpfter Dimensionen.
- Eine Abfrage muss from gefolgt vom Namen der Tabelle enthalten, aus der die Daten extrahiert werden sollen.
Beispielabfrage:
select date, users, country, region as "country > region" from users_table
Erläuterung:
- Die Daten werden aus der Tabelle users_table abgefragt.
- Die erste Spalte (date) enthält die Datumsangaben der Transaktionen (Zeitstempel oder Datumstyp).
- Die zweite Spalte (users) enthält die Werte der Variable "Users" (Zahlentyp).
- Die dritte Spalte (country) ist eine Dimensionsspalte. Die Benutzer werden nach Land (String) aufgeschlüsselt.
- Die vierte Spalte (Region als "Land > Region" ) ist eine Dimensionszuordnung. Die Region ist keine eigenständige Dimension, sondern die Länder sind den Regionen zugeordnet.
Beispiel für ein Abfrageergebnis:
Konstante Werte abfragen
Wenn Sie nur konstante Werte importieren möchten (keine Zeitreihen), kann die Datumsspalte Null sein. Beispiel:
select null as date, price, plan_name from price_table
Einschränkungen und Workarounds für die Abfragen verknüpfter Dimensionen
Wenn Sie mit Abfragen arbeiten, können Sie pro Abfrage nur eine Ebene verknüpfter Dimensionen (Zuordnungen) erstellen. Dies bedeutet, dass Sie mehrere direkte Beziehungen von einer einzelnen Quelldimension aus herstellen können, aber Sie können innerhalb derselben Abfrage keine verketteten Beziehungen erstellen.
In einer Abfrage zulässig:
- A → B
- A → C
- A → D
In einer Abfrage nicht zulässig:
- A → B und B → C gleichzeitig
Workaround-Lösung
Um mehrstufige Beziehungen zu behandeln, müssen Sie zwei separate Abfragen erstellen:
Abfrage 1: Definieren Sie die ursprüngliche Zuordnungsbeziehung
Abfrage 2 Definieren Sie die sekundäre Zuordnungsbeziehung mithilfe eines fiktiven Werts
Beispiel: Leasingverträge und Fahrzeugtypen
Betrachten Sie ein Szenario, in dem:
- Leasingverträge an bestimmte Fahrzeuge/Kennzeichen gebunden sind (A → B)
- Fahrzeuge mit Fahrzeugtypen verknüpft sind (B → C)
- Die Beziehung nicht immer 1:1 ist, da Fahrzeuge in mehreren Verträgen vorkommen können.
Die folgenden Abfragen könnten verwendet werden:
Abfrage 1: Zuordnung von Leasingvertrag zu Kennzeichen
Abfrage 1
Abfrage 2: Zuordnung von Kennzeichen zu Fahrzeugtyp
Erläuterung:
- Die zweite Abfrage verwendet einen fiktiven Wert (in diesem Fall 1), um die Anforderungen der Abfrage zu erfüllen, der in keinem Modell verwendet wird.
- Beide Abfragen verwenden null für Datum als Platzhalter.
- Die Zuordnungssyntax verwendet >, um die Richtung der Beziehung anzugeben.
- Dieser Ansatz bewahrt die Datenintegrität und arbeitet gleichzeitig innerhalb der Systembeschränkungen.