SQL Server TRANSLATE-Funktion

Zusammenfassung: In diesem Tutorial lernen Sie, wie Sie die SQL Server TRANSLATE()-Funktion verwenden, um mehrere Einzelzeichen zu ersetzen und in einem Vorgang eins zu eins zu übersetzen.

Übersicht über die Funktion TRANSLATE() von SQL Server

Die Funktion TRANSLATE() gibt eine Zeichenfolge zurück, bei der die im zweiten Argument angegebenen Zeichen durch die übereinstimmenden Zeichen des dritten Arguments ersetzt werden.

Das Folgende veranschaulicht die Syntax der Funktion TRANSLATE():

Code language: SQL (Structured Query Language) (sql)

In dieser Syntax:

  • input_string ist eine zu durchsuchende Zeichenfolge. Es kann eine literale Zeichenfolge, ein Zeichenausdruck oder eine Spalte sein.
  • from_characters ist ein Zeichenfolgenausdruck, der die zu ersetzenden Zeichen enthält.
  • to_characters ist ein Zeichenfolgenausdruck, der die Ersetzungszeichen enthält.

Wenn die Längen von from_characters und to_characters unterschiedlich sind, gibt die Funktion TRANSLATE() einen Fehler zurück.

Wenn ein Argument NULL ist, gibt die Funktion TRANSLATE() NULL zurück.

SQL Server TRANSLATE()-Funktionsbeispiele

Das folgende Beispiel verwendet die Funktion TRANSLATE(), um eckige Klammern durch Klammern zu ersetzen:

Code language: SQL (Structured Query Language) (sql)

Hier ist die Ausgabe:

Die Anweisung ist äquivalent zum zweimaligen Aufruf der Funktion REPLACE():

Code language: SQL (Structured Query Language) (sql)

TRANSLATE() vs. REPLACE()

Die Funktion TRANSLATE() verhält sich ähnlich wie der Aufruf mehrerer REPLACE()-Funktionen.

Die Funktion TRANSLATE() ersetzt jedoch nicht alle Vorkommen eines Zeichens durch ein neues. Dies ist der Unterschied zwischen der Funktion TRANSLATE() und dem Aufruf mehrerer REPLACE()-Funktionen. Jeder REPLACE()-Funktionsaufruf würde alle relevanten Zeichen ersetzen.

In diesem Lernprogramm haben Sie gelernt, wie Sie die SQL Server-Funktion TRANSLATE() verwenden, um mehrere Einzelzeichen in einem Vorgang durch eine Eins-zu-Eins-Übersetzung zu ersetzen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.