SUBSTR |
Sous chaîne de caractères |
|---|---|
| Oracle Database SQL | Oracle version 6 ou supérieure |
Syntaxe
| substr(string, start_position[,length]) |
Paramètres
| Nom | Description |
|---|---|
| string | Ce paramètre permet d'indiquer la chaîne de caractères |
| start_position | Ce paramètre permet d'indiquer la position dans la chaîne de caractères |
| length | Ce paramètre permet d'indiquer la longueur du morceau de la chaîne de caractères |
Description
Cette fonction retourne une sous-chaîne de caractères contenus dans une chaîne de caractères.
Remarques
- Fonction de base en manipulation de chaînes : La fonction SUBSTR est essentielle pour extraire une portion spécifique d'une chaîne de caractères. Elle permet de récupérer un segment défini par une position de départ et une longueur, facilitant ainsi le traitement textuel dans les requêtes SQL.
- Disponibilité historique : Cette fonction est disponible depuis Oracle version 6 ou même plus tôt, ce qui en fait l'une des fonctions les plus anciennes et fondamentales du langage SQL Oracle, présente dans pratiquement toutes les versions utilisées aujourd'hui.
- Paramètre string : Le paramètre string est la chaîne d'entrée à partir de laquelle on souhaite extraire une sous-chaîne. Cette chaîne peut être une colonne, une expression ou une chaîne littérale.
- Paramètre start_position : Le paramètre start_position indique la position (basée sur 1) dans la chaîne à partir de laquelle l'extraction commence. Si cette position est négative, l'extraction débute à partir de la fin de la chaîne.
- Paramètre length : Le paramètre optionnel length détermine la longueur de la sous-chaîne à extraire. Si ce paramètre est omis, la fonction retourne tous les caractères depuis la position de départ jusqu'à la fin de la chaîne.
- Positionnement indexé à 1 : Contrairement à certains langages où l'indexation commence à 0, dans Oracle SQL, la position dans SUBSTR commence à 1, ce qui signifie que le premier caractère de la chaîne correspond à la position 1.
- Gestion des valeurs nulles : Si la chaîne d'entrée est NULL, la fonction retourne NULL. De même, si la position de départ est hors des limites de la chaîne, le résultat sera une chaîne vide.
- Extraction depuis la fin avec position négative : La possibilité d'utiliser une position négative permet d'extraire une sous-chaîne en partant de la fin, ce qui est utile pour des opérations comme obtenir une extension de fichier ou un suffixe.
- Sensibilité à la casse et aux caractères spéciaux : La fonction SUBSTR extrait les caractères tels quels, sans modification de casse. Elle fonctionne également avec des chaînes contenant des espaces, des caractères spéciaux, et même des caractères multioctets selon le jeu de caractères utilisé.
- Utilisation fréquente dans le traitement de données : Elle est couramment utilisée pour manipuler des codes, des identifiants, ou des données formatées, comme extraire un préfixe, un suffixe, ou un segment particulier d'un numéro ou d'une chaîne alphanumérique.
- Performance : La fonction est très performante et optimisée dans Oracle, ce qui la rend adaptée aux traitements en masse sur des colonnes de grandes tables, sans impact significatif sur la vitesse d'exécution.
- Compatibilité avec d'autres fonctions : SUBSTR s'utilise souvent en combinaison avec d'autres fonctions comme INSTR (pour localiser une position), LENGTH (pour mesurer la taille de la chaîne), ou CONCAT pour des opérations plus complexes de manipulation de chaînes.
Voir également
Article - Les géants de l'informatique - Oracle
Dernière mise à jour : Lundi, le 11 mai 2015