SQL RIGHT()

Dans le langage SQL la fonction RIGHT() permet d’extraire la fin d’une chaîne de caractères en définissant la longueur souhaité. La fonction permet de tronquer une chaîne en partant de la fin, sur le nombre de caractères souhaités.

Compatibilité : la fonction est compatible notamment avec MySQL, PostgreSQL, SQL Server et certaines version de Oracle. Si un système ne possède pas cette fonction, il est possible de la recréer grâce à la fonction SUBSTR() ou SUBSTRING().

Syntaxe

La fonction s’utilise dans une requête SQL en respectant la syntaxe ci-dessous :

SELECT RIGHT( chaine, longueur );

Le caractère “chaine” correspond à la chaîne de caractère d’entré, tandis que le paramètre “longueur” est un nombre qui correspond à la longueur maximum de la chaîne de retour.

Exemple

Les requêtes ci-dessous mettent en scène la fonction RIGHT() dans plusieurs exemples types d’utilisation avec leurs résultats :

SELECT RIGHT('abcdefghij', 3);  -- résultat : 'hij'
SELECT RIGHT('abcdefghij', 40); -- résultat : 'abcdefghij'
SELECT RIGHT('abcdefghij', 0);  -- résultat : ''
SELECT RIGHT('abcdefghij', -1); -- résultat : ''
SELECT RIGHT('abcdefghij', NULL); -- résultat : NULL

Les exemples montrent que le résultat retourne la fin des chaînes de caractères et ne dépassera jamais le nombre de caractères indiqués. Par ailleurs, si la chaîne d’entré est plus petit que la limite, le résultat ne sera pas tronqué.

Cette fonction peut s’avérer utile pour obtenir par exemple les derniers caractères pour un champ qui est formaté d’une certaines façon, tel que :

  • Une colonne qui contient une date au format AAAA-MM-JJ : la fonction peut aider à extraire uniquement le mois et le jour au format MM-JJ
  • Une colonne qui contient un prix formaté avec à chaque fois 2 décimales après la virgule : la fonction RIGHT peut aider à extraire uniquement les centimes

En savoir plus

La fonction LEFT() fonctionne de la même façon, à la différence qu’elle permet de retourner les caractères au début de la chaîne.

Partager