Fonction SQL ORACLE – RPAD()

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

La fonction SQL ORACLE RPAD permet de compléter un chaine de caractère (char1) par une autre chaine (char2) depuis l’à gauche jusqu’à atteindre une taille donnée (n)

Publicité

RPAD(char1, n, [char2])

Exemple :

SELECT RPAD('Bonjour', 10, '-') FROM DUAL;

RPAD('BONJOUR',10,'-')
----------------------
Bonjour---


Dans le cas où nous ne spécifions pas le la chaine char2, alors cette dernière et remplacer par Espace

SELECT '|' || RPAD('Bonjour', 10) || '|' FROM DUAL;

'|'||RPAD('BONJOUR',10)||'|'
----------------------------
|Bonjour   |

Au cas où le nombre n est inférieur au nombre de caractère de la chaine char1 alors le résultat est les n premiers caractère de la chaine char1

SELECT RPAD('Bonjour', 2, '-') FROM DUAL;

RPAD('BONJOUR',2,'-')
---------------------
Bo

La chaine char2 peut ne pas être qu’un seul caractère :

SELECT RPAD('Bonjour', 12, '+-*') FROM DUAL;

RPAD('BONJOUR',12,'+-*')
------------------------
Bonjour+-*+-

Syntaxe de RPAD en SQL Oracle

RPAD(chaine, longueur_totale [, caractere_de_remplissage])

RPAD complète une chaîne à droite jusqu'à atteindre la longueur demandée. Par défaut le remplissage se fait avec des espaces. Si la chaîne dépasse déjà cette longueur, elle est tronquée.

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

Exemples pratiques

SELECT RPAD('Oracle', 10, '.')  FROM DUAL;  -- Oracle....
SELECT RPAD('Oracle', 10)       FROM DUAL;  -- 'Oracle    '
SELECT RPAD('Oracle', 3)        FROM DUAL;  -- 'Ora' (tronqué)
SELECT RPAD('-', 30, '-')       FROM DUAL;  -- séparateur de 30 tirets

Cas d’usage n°1 — mise en page d’un état texte :

SELECT RPAD(nom, 20, '.') || LPAD(salaire, 8) AS ligne FROM employes;
-- DUPONT..............     3500

Cas d’usage n°2 — export à format fixe (fichiers bancaires, EDI, COBOL) :

SELECT RPAD(code_client, 10) || RPAD(nom, 30) || LPAD(montant, 12, '0') AS ligne_fichier
FROM factures;

RPAD vs LPAD : quand utiliser lequel

FonctionComplèteUsage typique
RPADà droitetexte, colonnes de largeur fixe, alignement à gauche
LPADà gauchenombres, zéros non significatifs (LPAD(id,5,’0′))

Les deux se combinent souvent pour centrer ou encadrer une valeur dans un rapport texte.

Erreurs fréquentes

  • Troncature silencieuse : aucune erreur si la chaîne dépasse — contrôlez avec LENGTH.
  • Colonnes CHAR : déjà complétées par des espaces, RPAD n’a alors aucun effet visible. Appliquez TRIM avant.
  • Caractère de remplissage vide : RPAD(x, 10, '') renvoie NULL.

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é

Un commentaire

Laisser un commentaire

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

Publicité