Teilstring Projektion
Projektion - Kurzfassung
Zweck: Gibt einen Abschnitt aus einer durch eine Projektion ermittelten Zeichenfolge zurück.
Die Teilstring Projektion gibt einen Abschnitt aus einer durch die Projektion ermittelten Zeichenfolge zurück.
Die optionalen Parameter Startindex und Max. Länge steuern, welcher Abschnitt des Rückgabewerts aus der Projektion als "Teilstring" zurückgegeben wird.
Konfiguration
ACHTUNG
Abhängig vom verwendeten Datenbanksystem können sich die Ergebnisse einer Teilstring Projektion signifikant variieren. Die hier vorgestellte Benutzeroberfläche lässt dabei rein technisch auch Parametrierungen zu, die nur auf bestimmten Datenbanken funktionieren.
Die Dokumentation im folgenden Abschnitt beschränkt sich auf Parameter-Kombinationen, die unabhängig vom verwendeten Datenbanksystem die beschriebenen Ergebnisse liefern.
Abweichende Parameter-Kombinationen sind in der Praxis rein technisch durchaus praktikabel, soweit mit dem verwendeten Datenbanksystem in Tests die gewünschten Ergebnisse erzielt werden.
Allerdings ist zu bedenken, dass dann bei einem späteren Wechsel des Datenbanksystems für eine bestehende Implementierung oder beim Austausch von Lösungskomponenten zwischen Lobster Data Platform / Orchestration-Systemen, die unterschiedliche Datenbanksysteme verwenden, schwerwiegende Fehlfunktionen und signifikante Abweichungen von angestrebten Verarbeitungslogiken auftreten können, deren Ursache ggf. nur mit erheblichem Aufwand lokalisierbar ist und im Kontext des "alternativen" Datenbanksystems unter Umständen auch nicht komplett behoben werden kann.
In der folgenden Tabelle beziehen sich die grün schattierten Zellen auf den Gebrauch der Parameter, der unabhängig vom Datenbanksystem gewährleistet sein sollte.
Die gelbe Schattierung kennzeichnet dagegen Hinweise für den Gebrauch der Parameter außerhalb des "strengen" Standard.
Parameter |
Typ |
Beschreibung |
Name |
String |
Der Parameter Name definiert optional einen Alias-Namen für die Projektion. Wird kein Name angegeben, wird der Name der Projektion mit dem statischen Präfix "substring of " als Name verwendet. |
Projektion |
String |
Als Projektion kann eine Projektion (s. Projektionen) eines beliebigen Typs (z. B. auch eine Literale Projektion) verwendet werden, solange diese einen String-Wert zurückgibt.
|
Liefert die Projektion einen anderen Datentyp als String, findet abhängig vom Datentyp und dem Datenbanksystem eine Typumwandlung zu String statt oder ein Fehler tritt auf. |
||
Startindex
|
Integer |
Der Startindex definiert über einen Integer-Wert (Ganzzahl) die Position innerhalb der aus der Projektion gewonnenen Zeichenfolge, ab der eine Teilzeichenfolge für den Rückgabewert übernommen werden soll.
Als Startindex muss zur Laufzeit ein positiver Integer-Wert vorliegen, damit das Ergebnis der Teilstring Projektion nicht von datenbankspezifischen Eigenheiten abhängt.
|
Wenn für den Startindex kein Wert ($null), der Wert 0, ein negativer Wert oder ein anderer Typ als Integer vorliegt, kann nicht von einem einheitlichen Ergebnis für unterschiedliche Datenbanksysteme ausgegangen werden. |
||
Max. Länge |
Integer |
Der Parameter Max. Länge definiert eine Obergrenze für die Länge der Zeichenfolge im Rückgabewert über einen Integer-Wert. Der zurückgegebene "Teilstring" endet aber spätestens mit dem letzten Zeichen aus der Projektion.
Für die Parametrierung greifen dieselben Optionen und Einschränkungen wie beim Startindex. |
Wenn für den Startindex kein Wert ($null), ein negativer Wert oder ein anderer Typ als Integer vorliegt, kann nicht von einem einheitlichen Ergebnis für unterschiedliche Datenbanksysteme ausgegangen werden. |
Beispiele
Einfaches Beispiel: Länderkennzeichen und Postleitzahlgebiet verketten
Ausgehend von den Feldern "Land" (countryCode) und "Postleitzahl" (zipcode) soll im Kontext einer Tupel-Suche ein zusammengesetzter Code für die REGION gebildet werden, nach dem das Suchergebnis z. B. sortiert oder gefiltert werden kann. Konkret sollen die ersten zwei Ziffern (bzw. Zeichen) der "Postleitzahl" mit dem internen Kürzel für das Land verkettet werden, um einen vierstelligen Code zu erhalten, wenn beide Felder ordnungsgemäß befüllt sind. Die Tabelle rechts zeigt in der ersten Spalte (REGION) Beispieldaten für eine Auswahl von Städten in Deutschland und der Schweiz. |
REGION,AREA,CITY |
Konfiguration:
Der Screenshot rechts zeigt die Konfiguration für die Projektion der ersten Spalte (REGION):
|
|
Komplexeres Beispiel: Variable Anzahl von Ziffern abhängig von der Länge der Postleitzahl
Ausgehend vom vorherigen Anwendungsfall soll nun abhängig vom "Land" (countryCode) eine variable Anzahl an führenden Ziffern aus der Postleitzahl (zipcode) in das Kennzeichen für die REGION übernommen werden,
Konkret soll aus vierstelligen Postleitzahlen nur die erste Ziffer und aus allen anderen die ersten zwei Zeichen übernommen werden.
Konfiguration:
Der Screenshot zeigt die angepasste Konfiguration für die Postleitzahlkomponente innerhalb der Textverkettungsprojektion für die REGION-Spalte:
|
|
Laufzeitbeispiel:
REGION,AREA,CITY |