TRIM (Transact-SQL)

S’applique à : SQL Server 2017 (14.x) et versions ultérieuresAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsPoint de terminaison SQL dans Microsoft FabricEntrepôt dans Microsoft Fabric

Supprime le caractère espace char(32) ou d’autres caractères spécifiés au début et à la fin d’une chaîne.

À compter de SQL Server 2022 (16.x), supprimez éventuellement le caractère espace char(32) ou les autres caractères spécifiés du début, de la fin ou des deux extrémités d’une chaîne.

Conventions de la syntaxe Transact-SQL

Syntaxe

Syntaxe SQL Server avant SQL Server 2022 (16.x), Azure SQL Database, Azure Synapse Analytics et Microsoft Fabric :

TRIM ( [ characters FROM ] string )

Syntaxe pour SQL Server 2022 (16.x) et versions ultérieures, et Azure SQL Managed Instance :

Important

Vous aurez besoin que le niveau de compatibilité de votre base de données soit défini sur 160 pour pouvoir utiliser les mots clés LEADING, TRAILING ou BOTH.

TRIM ( [ LEADING | TRAILING | BOTH ] [characters FROM ] string )

Notes

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 et versions antérieures, consultez Versions antérieures de la documentation.

Arguments

[ LEADING | TRAILING | BOTH ]

S’applique à : SQL Server 2022 (16.x) et versions ultérieures, et Azure SQL Managed Instance :

Le premier argument facultatif spécifie le côté de la chaîne à couper :

  • LEADING supprime les caractères spécifiés au début d’une chaîne.

  • TRAILING supprime les caractères spécifiés à la fin d’une chaîne.

  • BOTH (comportement positionnel par défaut) supprime les caractères spécifiés à partir des deux extrémités d’une chaîne.

caractères

Littéral, variable ou appel de fonction de n’importe quel type de caractère non LOB (nvarchar, varchar, nchar ou char) contenant des caractères à supprimer. Les types nvarchar(max) et varchar(max) ne sont pas autorisés.

string

Expression de n’importe quel type de caractère (nvarchar, varchar, nchar ou char) dans laquelle des caractères doivent être supprimés.

Types de retour

Renvoie une expression de caractères avec un type d’argument de chaîne dans laquelle le caractère espace char(32) ou d’autres caractères spécifiés sont supprimés des deux côtés. Renvoie NULL si la chaîne d’entrée est NULL.

Remarques

Par défaut, la fonction TRIM supprime le caractère d’espacement aux deux extrémités de la chaîne. Ce comportement est équivalent à LTRIM(RTRIM(@string)).

Pour activer les arguments positionnels facultatifs LEADING, TRAILING ou BOTH dans SQL Server 2022 (16.x), vous devez activer le niveau de compatibilité de base de données 160 sur la ou les bases de données auxquelles vous vous connectez lors de l’exécution de requêtes.

  • Avec l’argument positionnel facultatif LEADING, le comportement équivaut à LTRIM(@string, characters).
  • Avec l’argument positionnel facultatif TRAILING, le comportement équivaut à RTRIM(@string, characters).

Exemples

R. Supprimer le caractère espace des deux côtés de la chaîne

L’exemple suivant supprime les espaces avant et après le mot test.

SELECT TRIM( '     test    ') AS Result;

Voici le jeu de résultats obtenu.

test

B. Supprimer les caractères spécifiés des deux côtés de la chaîne

L’exemple suivant fournit une liste de caractères possibles à supprimer d’une chaîne.

SELECT TRIM( '.,! ' FROM '     #     test    .') AS Result;

Voici le jeu de résultats obtenu.

#     test

Dans cet exemple, seuls le point et les espaces situés avant # et après le mot test ont été supprimés. Les autres caractères ont été ignorés parce qu’ils n’existaient pas dans la chaîne.

C. Supprimer les caractères spécifiés du début d’une chaîne de caractères

Important

Vous aurez besoin que le niveau de compatibilité de votre base de données soit défini sur 160 pour pouvoir utiliser les mots clés LEADING, TRAILING ou BOTH.

L’exemple suivant supprime le . en début de chaîne avant le mot test.

SELECT TRIM(LEADING '.,! ' FROM  '     .#     test    .') AS Result;

Voici le jeu de résultats obtenu.

# test .

D. Supprimer les caractères spécifiés de la fin d’une chaîne de caractères

Important

Vous aurez besoin que le niveau de compatibilité de votre base de données soit défini sur 160 pour pouvoir utiliser les mots clés LEADING, TRAILING ou BOTH.

L’exemple suivant supprime le . en fin de chaîne après le mot test.

SELECT TRIM(TRAILING '.,! ' FROM '     .#     test    .') AS Result;

Voici le jeu de résultats obtenu.

.#     test

E. Supprimer les caractères spécifiés du début et de la fin d’une chaîne

Important

Vous aurez besoin que le niveau de compatibilité de votre base de données soit défini sur 160 pour pouvoir utiliser les mots clés LEADING, TRAILING ou BOTH.

L’exemple suivant supprime les caractères 123 du début et de la fin de la chaîne 123abc123.

SELECT TRIM(BOTH '123' FROM '123abc123') AS Result;

Voici le jeu de résultats obtenu.

abc

Voir aussi