Heim > Datenbank > MySQL-Tutorial > Wie teilt man Zeichenfolgen in SQL Server 2008 R2 effizient auf?

Wie teilt man Zeichenfolgen in SQL Server 2008 R2 effizient auf?

Barbara Streisand
Freigeben: 2025-01-25 07:06:09
Original
276 Leute haben es durchsucht

Effiziente Aufteilung von Zeichenfolgen in SQL Server 2008 R2

Frage:

Das Aufteilen von Zeichenfolgen mithilfe von Trennzeichen (z. B. Kommas) ist in der Datenverarbeitung häufig erforderlich. Viele Lösungen, die in späteren Versionen von SQL Server funktionieren, funktionieren jedoch nicht mit SQL Server 2008 R2.

Lösung:

Für SQL Server 2008 R2 besteht eine zuverlässige Methode darin, eine benutzerdefinierte benutzerdefinierte Funktion (UDF) mit T-SQL zu erstellen. Die folgende UDF mit dem Namen dbo.splitstring kann verwendet werden, um eine Zeichenfolge durch ein angegebenes Trennzeichen zu teilen:

<code class="language-sql">CREATE FUNCTION dbo.splitstring (@stringToSplit VARCHAR(MAX))
RETURNS @returnList TABLE ([Name] [nvarchar](500))
AS
BEGIN
    DECLARE @name NVARCHAR(255)
    DECLARE @pos INT

    WHILE CHARINDEX(',', @stringToSplit) > 0
    BEGIN
        SELECT @pos = CHARINDEX(',', @stringToSplit)
        SELECT @name = SUBSTRING(@stringToSplit, 1, @pos - 1)

        INSERT INTO @returnList
        SELECT @name

        SELECT @stringToSplit = SUBSTRING(@stringToSplit, @pos + 1, LEN(@stringToSplit) - @pos)
    END

    INSERT INTO @returnList
    SELECT @stringToSplit

    RETURN
END</code>
Nach dem Login kopieren

Um diese UDF zu verwenden, übergeben Sie einfach die Zeichenfolge, die Sie teilen möchten, als Parameter wie folgt:

<code class="language-sql">SELECT * FROM dbo.splitstring('91,12,65,78,56,789')</code>
Nach dem Login kopieren

Dadurch wird eine Tabelle zurückgegeben, die die einzelnen Komponenten der ursprünglichen Zeichenfolge enthält, getrennt durch Kommas.

How to Efficiently Split Strings in SQL Server 2008 R2?

Das obige ist der detaillierte Inhalt vonWie teilt man Zeichenfolgen in SQL Server 2008 R2 effizient auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage