SQLShack (Français)

Dans cet article, nous allons passer en revue la nouvelle fonction SQL TRIM dans À partir de SQL Server 2017, ainsi que de fournir des informations sur les fonctions de chaînes antérieures telles que LTRIM ET RTRIM.

Les développeurs SQL sont généralement confrontés à des problèmes avec des espaces au début et / ou à la fin dune chaîne de caractères. Nous pouvons avoir besoin de couper les caractères de début et de fin dune chaîne de caractères. Nous pourrions également avoir besoin de manipuler des chaînes avec des fonctions SQL. Supposons que nous voulions supprimer les espaces de la fin dune chaîne, nous aurions besoin dutiliser les fonctions SQL LTRIM et RTRIM jusquà SQL Server 2016.

Dans SQL Server 2017, nous obtenons une nouvelle fonction intégrée pour couper les caractères de début et de fin avec une seule fonction. La fonction SQL TRIM fournit des fonctionnalités supplémentaires de suppression de caractères de la chaîne spécifiée. Nous pouvons également utiliser les fonctions RTRIM et LTRIM avec SQL Server 2017. Explorons ces fonctions avec des exemples.

Fonction SQL LTRIM

Elle supprime les caractères du début (en commençant par le côté gauche) de la chaîne spécifiée. Dans la requête suivante, nous avons un espace blanc avant et après la chaîne. Nous devons supprimer lespace du côté gauche de la chaîne à laide de la fonction LTRIM.

Nous utilisons la fonction SQL DATALENGTH () pour calculer la longueur des données en octets avant et après lutilisation de la fonction SQL LTRIM.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 24
  • Taille de la chaîne de données en octets après SQL LTRIM: 18

Fonction SQL RTRIM

Il supprime les caractères de la fin ((en commençant par le côté droit) de la chaîne spécifiée. Exécutons la requête suivante pour examiner leffet de la fonction SQL RTRIM.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 24
  • Taille de la chaîne de données en octets après SQL RTRIM: 16

Fonction TRIM dans SQL Server 2017

Avant SQL Server 2017, si nous devons supprimer à la fois les espaces de début et de formation, nous devons utiliser les fonctions LTRIM et RTRIM. Dans la requête suivante , nous avons utilisé à la fois les fonctions LTRIM et RTIM avec une variable de chaîne.

Dans la capture décran suivante, nous pouvons voir quelle supprime à la fois le début et le tra espace vide de la chaîne.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 24
  • Taille de la chaîne de données en octets après SQL LTRIM: 11

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 25
  • Taille de la chaîne de données en octets après SQL LTRIM et RTRIM: 11

Nous devons utiliser deux fonctions pour supprimer les espaces de la chaîne. Nous pouvons utiliser une seule instance dune fonction TRIM dans SQL Server 2017 et les versions ultérieures pour couper les caractères de début et de fin, explorons la fonction TRIM dans une autre section de cet article.

Syntaxe de la fonction TRIM

1

TRIM (chaîne)

  • TrimCharacter: Nous pouvons spécifier le caractère à supprimer de la chaîne. Par défaut, SQL Server supprime les espaces des deux côtés dune chaîne
  • Chaîne: nous devons spécifier la chaîne que nous voulons couper

Explorons la fonction SQL TRIM avec exemples.

TRIM Espaces de début et de formation:

Par défaut, la fonction Trim supprime lespace des deux côtés dune chaîne. Dans la requête suivante, nous devons définir une chaîne avec un espace des deux côtés de la chaîne.

Exécutez cette requête:

Nous navons spécifié aucun caractère à supprimer dans la fonction TRIM. Dans la sortie, la fonction SQL TRIM supprime les espaces de début et de fin.

Vous pouvez également remarquer la différence de longueur de chaîne avant et après la fonction TRIM.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 24
  • Taille de la chaîne de données en octets après SQL TRIM: 11

TRIM Caractères principaux dune chaîne:

Dans lexemple précédent, nous avons exploré que SQL TRIM est le remplacement de RTRIM et LTRIM et il élimine la suppression de tous les espaces avant et après une chaîne. Nous pouvons également supprimer les caractères de la chaîne en utilisant TRIM. Supposons que nous voulions supprimer le caractère ON de la chaîne, nous pouvons le spécifier dans la fonction TRIM selon le script suivant.

Il vérifie les caractères spécifiés à la fois du côté de début et de fin et supprime les caractères particuliers. Dans la chaîne Application, nous avons le caractère ON dans le premier côté. Dans la capture décran suivante, vous pouvez regarder la sortie après la fonction TRIM.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 11
  • Taille de la chaîne de données en octets après SQL TRIM: 9

Regardons un autre exemple. Cette fois, nous voulons supprimer les personnages App du côté principal. Nous navons pas besoin de modifier le script. Nous pouvons spécifier le caractère à supprimer en utilisant SQL TRIM, et cela donne le résultat requis.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 11
  • Taille de la chaîne de données en octets après SQL TRIM: 8

Dans les exemples précédents, nous avons supprimé le caractère de lextrémité avant ou arrière . Si nous avons un caractère des deux côtés, cela les supprime également.

Dans lexemple suivant, nous voulons supprimer le caractère A qui se trouve des deux côtés de la chaîne. Exécutez le script et il supprime les caractères spécifiés des deux côtés.

  • Taille de la chaîne de données en octets pour loriginal Chaîne: 12
  • Taille de la chaîne de données en octets après SQL TRIM: 10

Supposons que nous ayons spécifié un caractère qui nest pas présent sur la chaîne. Dans lexemple suivant, nous voulons supprimer les caractères A et C de lextrémité de début ou de fin. Nous navons pas le caractère C de chaque côté, donc il ne le supprime pas. Il supprime uniquement le caractère A et donne la sortie.

  • Taille de la chaîne de données en octets pour la chaîne dorigine: 12
  • Taille de la chaîne de données en octets après SQL TRIM: 10

TRIM pour les enregistrements dans une table

Dans larticle précédent, nous avons utilisé une variable pour définir une chaîne et y effectuer une opération SQL TRIM. Habituellement, nous avons besoin dutiliser TRIM sur les enregistrements de table. Utilisons-le dans lexemple suivant.

Dans les exemples suivants, il a éliminé le caractère R de la chaîne au début et à la fin.

Nous pouvons également utiliser la fonction SQL TRIM dans linstruction Update. Supposons que nous souhaitons mettre à jour tous les enregistrements de la table Employee et que nous souhaitions éliminer les caractères Manager de JobTitile.

Il ne traite pas le Manager comme un seul mot. La fonction Trim vérifie chaque caractère de la chaîne et lélimine.

Nous pouvons utiliser une virgule (,) pour séparer chaque caractère également.

Il fait également le même travail et supprime des caractères spécifiques de la chaîne aux extrémités de début et de fin.

Conclusion

Dans cet article, nous avons exploré la fonction SQL TRIM avec SQL Server 2017 et supérieur. Nous avons également découvert les fonctions TRIM LTRIM et RTRIM disponibles sur ou avant SQL Server 2016.

Selon la version de SQL Server que vous utilisez, vous devez comprendre ces fonctions et vous familiariser avec les concepts. Jespère que vous trouverez cet article utile. Nhésitez pas à nous faire part de vos commentaires ou à poser des questions dans les commentaires ci-dessous.

  • Auteur
  • Messages récents
En tant que formateur certifié MCSA et Microsoft Certified à Gurgaon, en Inde, avec 13 ans dexpérience, Rajendra travaille pour une variété de grandes entreprises se concentrant sur loptimisation des performances, la surveillance, la haute disponibilité et les stratégies de reprise après sinistre et la mise en œuvre. Il est lauteur de centaines darticles faisant autorité sur SQL Server, Azure, MySQL, Linux, Power BI, le réglage des performances, AWS / Amazon RDS, Git et les technologies associées qui ont été consultés par plus de 10 millions de lecteurs à ce jour.
Il est le créateur de lune des plus grandes collections darticles en ligne gratuits sur un seul sujet, avec sa série de 50 articles sur les groupes de disponibilité Always On SQL Server. Sur la base de sa contribution à la communauté SQL Server, il a été récompensé par divers prix dont le prestigieux « Meilleur auteur de lannée » en continu en 2020 et 2021 chez SQLShack.
Raj est toujours intéressé par de nouveaux défis, donc si vous avez besoin de conseil aide sur tout sujet traité dans ses écrits, il peut être contacté à [email protected]
Voir tous les articles de Rajendra Gupta

Derniers messages de Rajendra Gupta (voir tout)
  • Mise à niveau des versions mineures et majeures pour AWS RDS SQL Server – 29 janvier 2021
  • Déploiement dinstances AWS RDS PostgreSQL – 27 janvier 2021
  • Migration de vos bases de données SQL sur site vers AWS RDS SQL Server à laide dAWS DMS – 25 janvier , 2021

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *