Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv
 

Subfield() wird zur Extrahierung von Teilstring-Komponenten aus einem übergeordneten Stringfeld verwendet,
ei dem die Ursprungsdatensatzfelder aus zwei oder mehr Teilen bestehen, die durch ein Trennzeichen getrennt sind.
Die Funktion Subfield() kann zum Beispiel verwendet werden, um Vor- und Nachnamen aus einer Liste von Datensätzen, die aus Vor- und Nachname bestehen, die Komponenten eines Pfadnamens oder Daten aus kommagetrennten Tabellen zu extrahieren. Wenn Sie die Funktion Subfield() in einem LOAD-Befehl ohne den optionalen Parameter field_no verwenden, wird für jeden Teilstring ein vollständiger Datensatz generiert. Wenn mehrere Felder mit Subfield() geladen werden, werden die kartesischen Produkte aller Kombination erstellt.

SubField(text, delimiter[, field_no ])

 

Ist das ein Ersatz für Right, Mid und Left?

SubField() kann anstelle komplexer Kombinationen von Funktionen wie Len(), Right(), Left(), Mid() und anderen Stringfunktionen verwendet werden.

 

Was sind die gefahren der Funktion

Achtung die Funktion ist sehr Ressourcen Intensiv.
Die Funktion führt zu sehr vielen Zeilen, bitte nur die nötigsten Spalten verwenden!
Die Funktion ist sehr Ressourcen intensiv und auch Speicher intensiv, daher so weinig wie möglich verwenden!

 

SubField(text, delimiter[, field_no ])

 

Argumente

Argument Beschreibung
text Der Original-String. Dabei kann es sich um hartcodierten Text, eine Variable, eine Dollarzeichenerweiterung oder eine andere
Formel handeln.
delimiter Ein Zeichen in der Eingabe text, das den String in Komponenten aufteilt.
field_no Das optionale dritte Argument ist eine Ganzzahl, die angibt, welcher der Teilstrings des übergeordneten Strings text geliefert werden soll. Ein negativer Wert bewirkt, dass der Teilstring von der rechten Seite des Strings extrahiert wird. Das heißt, die Stringsuche erfolgt von rechts nach links statt von links nach rechts, wenn field_no ein positiver Wert ist.

 

Beispiele

Beispiel Ergebnis
SubField('abc;cde;efg', ';', 2) Liefert 'cde'
SubField('', ';', 1) Liefert NULL
SubField(';', ';', 1) Liefert einen leeren String

Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt
in Ihrem Dokument dann mindestens diejenigen Felder hinzu, die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.

FullName: LOAD * inline [ Name 'Dave Owen 'Joe Tem' ]; SepNames: Load Name, SubField(Name, ' ',1) as FirstName, SubField(Name, ' ',-1) as Surname Resident FullName; Drop Table FullName;

 

 

Name Firstname Surname
Dave Owen Dave Owen
Joe Tem Joe Tem

 

Dieses Beispiel zeigt das Erzeugen mehrerer Zeilen aus einer einzelnen Instanz von Subfield(). Fügen Sie Ihrem Dokument das Beispielskript hinzu und führen Sie sie aus. Fügen Sie einem Arbeitsblatt in Ihrem Dokument dann mindestens diejenigen Felder hinzu,
die in der Ergebnisspalte aufgeführt sind, um das Ergebnis anzuzeigen.

LOAD DISTINCT Player, SubField(Project,',') as Project ; Load * inline [ Player|Project Neil|Music,OST Jo|Music Mike|Music,OST,Video ] (delimiter is '|') ;

 

 

Player Project
Neil Miusic
Neil OST
Jo Miusic
Mike Miusic
Mike OST
Mike Video