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

Ersetzen einer Zeichenfolge durch eine andere Zeichenfolge in SQL Server (T-SQL)

In SQL Server können Sie das REPLACE() verwenden Funktion, um alle Vorkommen einer Zeichenfolge durch eine andere Zeichenfolge zu ersetzen.

Die Funktion akzeptiert drei Argumente; die Zeichenfolge, die die zu ersetzende Zeichenfolge enthält, die zu ersetzende Zeichenfolge und die zu ersetzende Zeichenfolge.

Beispiel

Hier ist ein Beispiel zur Veranschaulichung.

SELECT REPLACE('Big dog', 'dog', 'cat');

Ergebnis:

Big cat

Mehrere Vorkommen

Wie bereits erwähnt, das REPLACE() Funktion ersetzt alle Vorkommen. Wenn also die zu ersetzende Zeichenfolge mehrmals vorkommt, werden sie alle ersetzt.

SELECT REPLACE('Big dogs and little dogs', 'dog', 'cat');

Ergebnis:

Big cats and little cats

Seien Sie vorsichtig

Es lohnt sich, beim Ersetzen von Text darauf zu achten. Sie könnten leicht unbeabsichtigte Ergebnisse erhalten, wenn Sie nicht aufpassen.

SELECT REPLACE('Very dogmatic', 'dog', 'cat');

Ergebnis:

Very catmatic

Mehrere Zeichen ersetzen

Wenn Sie sich in der Situation befinden, in der Sie mehrere REPLACE() verschachteln Funktionen, um mehrere Zeichen an verschiedenen Stellen innerhalb der Zeichenfolge zu ersetzen, versuchen Sie es mit TRANSLATE() funktionieren stattdessen. Das TRANSLATE() Funktion funktioniert ähnlich wie verschachteltes REPLACE() Funktionen, aber mit einem kleinen Unterschied.