Fonction TRANSLATE du serveur SQL

Résumé : dans ce tutoriel, vous apprendrez à utiliser la fonction TRANSLATE() du serveur SQL pour remplacer plusieurs caractères uniques, une traduction de un à un en une seule opération.

Synthèse de la fonction TRANSLATE() du serveur SQL

La fonction TRANSLATE() renvoie une chaîne de caractères où le caractère spécifié dans le deuxième argument est remplacé par les caractères correspondants du troisième argument.

Les éléments suivants illustrent la syntaxe de la fonction TRANSLATE():

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

Dans cette syntaxe:

  • input_string est une chaîne de caractères à rechercher. Il peut s’agir d’une chaîne littérale, d’une expression de caractères ou d’une colonne.
  • from_characters est une expression de chaîne qui contient les caractères à remplacer.
  • to_characters est une expression de chaîne qui contient les caractères de remplacement.

Si les longueurs de from_characters et to_characters sont différentes, la fonction TRANSLATE() renverra une erreur.

Si l’un des arguments est NULL, la fonction TRANSLATE() renverra NULL.

Exemples de la fonction TRANSLATE() du serveur SQL

L’exemple suivant utilise la fonction TRANSLATE() pour remplacer les accolades carrées par des parenthèses:

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

Voici la sortie:

L’instruction équivaut à appeler deux fois la fonction REPLACE():

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

TRANSLATE() vs. REPLACE()

Le comportement de la fonction TRANSLATE() est similaire à l’appel de plusieurs fonctions REPLACE().

Cependant, la fonction TRANSLATE() ne remplace pas toutes les occurrences d’un caractère par un nouveau. C’est la différence entre la fonction TRANSLATE() et l’appel de plusieurs fonctions REPLACE(), chaque appel de fonction REPLACE() remplacerait tous les caractères pertinents.

Dans ce tutoriel, vous avez appris à utiliser la fonction TRANSLATE() de SQL Server pour remplacer plusieurs caractères uniques, une traduction de un à un en une seule opération.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.