Fonction SQL ORACLE – TRIM()

Illustration du tutoriel SQL Oracle : Fonction SQL ORACLE – TRIM()

La fonction SQL ORACLE TRIM permet d’enlever les espaces qui existent au début et à la fin d’une chaine de caractère

Publicité
SELECT TRIM('   Bonjour  ') FROM DUAL;

TRIM('BONJOUR') 
----------------------
Bonjour

Attention, les espaces qui sont au milieu de la chaine ne sont pas supprimer par cette fonction

SELECT LTRIM('  Salut tout  le   monde     ') FROM DUAL;

TRIM('SALUTTOUTLEMONDE') 
------------------------ 
Salut tout  le   monde

Syntaxe de TRIM en SQL Oracle

TRIM([ LEADING | TRAILING | BOTH ] [caractere FROM] chaine)

Sans option, TRIM supprime les espaces en début et en fin de chaîne (BOTH par défaut).

🧪 Envie de pratiquer ? Exécutez les exemples de cet article dans notre SQL Playground gratuit — aucun logiciel à installer.

Exemples pratiques

SELECT TRIM('   Oracle   ')                FROM DUAL;  -- 'Oracle'
SELECT TRIM(LEADING  '0' FROM '000123')    FROM DUAL;  -- '123'
SELECT TRIM(TRAILING '.' FROM 'phrase...') FROM DUAL;  -- 'phrase'
SELECT TRIM(BOTH '*' FROM '**texte**')     FROM DUAL;  -- 'texte'

Nettoyer une colonne importée :

UPDATE clients SET nom = TRIM(nom) WHERE nom != TRIM(nom);

TRIM, LTRIM et RTRIM : les différences

FonctionActionPeut retirer plusieurs caractères ?
TRIMDébut et/ou finNon — un seul caractère
LTRIMDébut (gauche)Oui — un jeu de caractères
RTRIMFin (droite)Oui — un jeu de caractères
SELECT LTRIM('xy xyOracle', 'xy ') FROM DUAL;  -- 'Oracle' (retire x, y et espace)
SELECT RTRIM('Oracle;;,', ';,')    FROM DUAL;  -- 'Oracle'

Retenez : TRIM = un seul caractère, des deux côtés ; LTRIM/RTRIM = un jeu de caractères, d’un seul côté.

Le piège du type CHAR

Une colonne CHAR(10) est complétée par des espaces à droite. TRIM les supprime à l’affichage, mais la comparaison WHERE nom = 'Ali' fonctionne quand même grâce au blank-padded comparison d’Oracle. Avec VARCHAR2, en revanche, les espaces comptent : d’où l’intérêt de nettoyer les données à l’insertion.

Sur le même thème

Un nouveau tutoriel SQL par semaine

Nous ne spammons pas ! Consultez notre politique de confidentialité pour plus d’informations.

Publicité

Laisser un commentaire

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

Cours SQL & Oracle — 100% gratuitVoir les cours →