Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Einfügen von Zeichen in die Mitte einer Zeichenfolge in SQL Server (T-SQL)

SQL Server stellt das STUFF() bereit Funktion, mit der Sie eine Zeichenfolge in eine andere Zeichenfolge einfügen können.

Mit der Funktion können Sie auch die Anzahl der Zeichen (falls vorhanden) angeben, die aus der ursprünglichen Zeichenfolge gelöscht werden sollen, damit sie in die neue Zeichenfolge passen.

Beispiel

SELECT STUFF('WaterMelon', 6, 0, 'Juicy');

Ergebnis:

WaterJuicyMelon

Hier habe ich den String Juicy eingefügt in die Zeichenfolge WaterMelon .

In diesem Fall habe ich dem dritten Argument den Wert 0 gegeben , was bedeutet, dass keine Zeichen aus der ursprünglichen Zeichenfolge gelöscht wurden.

Zeichen aus der Originalzeichenfolge löschen

In diesem Beispiel lösche ich einige Zeichen aus dem ursprünglichen String.

SELECT STUFF('WaterMelon', 6, 3, 'Juicy');

Ergebnis:

WaterJuicyon

Negative/Null-Startpositionen

Wenn Sie einen negativen Wert oder Null für die Startposition angeben, wird Null zurückgegeben.

SELECT STUFF('WaterMelon', -1, 3, 'Juicy');

Ergebnis:

NULL

Wenn die Startposition zu hoch ist

Sie erhalten auch null, wenn Sie eine Startposition angeben, die länger als die ursprüngliche Zeichenfolge ist.

SELECT STUFF('WaterMelon', 100, 3, 'Juicy');

Ergebnis:

NULL