STUFF (Transact-SQL)

Löscht eine angegebene Anzahl Zeichen ab der angegebenen Position aus einer Zeichenfolge und fügt an derselben Position eine andere Zeichenfolge ein.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

STUFF ( character_expression , start , length ,character_expression )

Argumente

character_expression

Ein Ausdruck für Zeichendaten. character_expression kann eine Konstante, Variable oder Spalte mit Zeichen- oder Binärdaten sein.

start

Ein ganzzahliger Wert, der die Position angibt, ab der Zeichen gelöscht werden sollen und an der anschließend eine andere Zeichenfolge eingefügt werden soll. Falls start oder length negativ ist, wird eine NULL-Zeichenfolge zurückgegeben. Ist start länger als der erste Zeichenausdruck (character_expression), wird eine NULL-Zeichenfolge zurückgegeben. start kann vom bigint-Datentyp sein.

length

Eine ganze Zahl, die festlegt, wie viele Zeichen gelöscht werden sollen. Falls length länger als der erste Zeichenausdruck (character_expression) ist, erstreckt sich die Löschung bis auf das letzte Zeichen im letzten Zeichenausdruck (character_expression). length kann vom bigint-Datentyp sein.

Rückgabetypen

Gibt Zeichendaten zurück, wenn character_expression einen der unterstützten Zeichendatentypen ist. Gibt Binärdaten zurück, wenn character_expression einen der unterstützten Binärdatentypen ist.

Hinweise

Wenn der Ergebniswert größer als der vom Rückgabetyp unterstützte Höchstwert ist, wird ein Fehler ausgegeben.

Beispiele

In diesem Beispiel wird eine neue Zeichenfolge zurückgegeben, indem zunächst drei Zeichen aus der ersten Zeichenfolge (abcdef) ab der Position 2, (also bei b) gelöscht werden. Anschließend wird die zweite Zeichenfolge an der Löschposition eingefügt.

SELECT STUFF('abcdef', 2, 3, 'ijklmn')
GO

Dies ist das Resultset. 

--------- 
aijklmnef 

(1 row(s) affected)

Siehe auch

Verweis

Datentypen (Transact-SQL)
Zeichenfolgenfunktionen (Transact-SQL)

Hilfe und Informationen

Informationsquellen für SQL Server 2005