Aufteilen von Zeichenfolgen mithilfe von Trennzeichen in T-SQL
Diese Frage befasst sich mit der Notwendigkeit, bestimmte Informationen aus einer langen Zeichenfolge zu extrahieren, die in einer Tabelle gespeichert ist Spalte. Die Herausforderung besteht darin, die Zeichenfolge anhand bestimmter Trennzeichen aufzuteilen und ein bestimmtes Datenelement zu extrahieren.
Um dies mit T-SQL zu erreichen, kann der folgende Ansatz verwendet werden:
Erstens der CHARINDEX oder die PATINDEX-Funktion wird verwendet, um die Position des Trennzeichens ('|') innerhalb der Zeichenfolge zu lokalisieren.
Als nächstes wird die STUFF-Funktion verwendet um eine neue Zeichenfolge zu erstellen, die den Text nach dem Trennzeichen enthält.
Zuletzt wird die SUBSTRING-Funktion verwendet, um den gewünschten Text, wie in diesem Beispiel den „Kundennamen“, basierend auf der Position des zu extrahieren Trennzeichen und die angegebene Länge der Zeichen.
Select col1, col2, LTRIM(RTRIM(SUBSTRING( STUFF(col3, CHARINDEX('|', col3, PATINDEX('%|Client Name =%', col3) + 14), 1000, ''), PATINDEX('%|Client Name =%', col3) + 14, 1000))) col3 from Table01
Diese Abfrage nutzt die CHARINDEX- oder PATINDEX-Funktion, um die Position des „|“ zu ermitteln. Zeichen in der Spalte „col3“ und erstellt dann mithilfe der STUFF-Funktion eine neue Zeichenfolge, die den Text nach dem Trennzeichen enthält. Schließlich wird die SUBSTRING-Funktion verwendet, um den Wert „Client Name“ basierend auf der Position und Länge der Zeichen zu extrahieren.
Das obige ist der detaillierte Inhalt vonWie kann ich bestimmte Daten aus einer durch Trennzeichen getrennten Zeichenfolge in T-SQL extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!