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

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

Mary-Kate Olsen
Freigeben: 2025-01-25 06:51:13
Original
591 Leute haben es durchsucht

How to Efficiently Split Comma-Separated Strings in SQL Server 2008 R2?

Effiziente Aufteilung von Zeichenfolgen in SQL Server 2008 R2: Komplettlösung

Frage:

Das Extrahieren und Trennen von Werten aus durch Kommas getrennten Zeichenfolgen in SQL Server 2008 R2-Spalten war schon immer eine Herausforderung für Benutzer. Obwohl viele Lösungen vorgeschlagen wurden, war in dieser speziellen Version keine davon erfolgreich.

Lösung:

Um dieses Problem zu lösen, stellt die folgende Lösung eine umfassende Funktion speziell für SQL Server 2008 R2 bereit:

<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 Funktion zu verwenden, fragen Sie einfach den gewünschten Wert mit der folgenden Syntax ab:

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

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

Quelle:php.cn
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