Comment supprimer les espaces dans Oracle : 1. Utilisez la fonction Trim pour supprimer les espaces de début et de fin dans la chaîne ; 2. Utilisez rtrim et ltrim pour supprimer les espaces de gauche et de droite ; 3. Utilisez la fonction de remplacement pour supprimer tous les espaces ; dans la chaîne.
L'environnement d'exploitation de cet article : système Windows 7, ordinateur Dell G3, version Oracle 11g.
Comment supprimer des espaces dans Oracle ?
Comment supprimer les espaces d'une chaîne dans Oracle :
La première est la fonction Trim. La fonction trim a pour fonction de supprimer tous les caractères spécifiés, et la suppression des espaces au début et à la fin d'une chaîne est la fonction trim la plus fréquemment utilisée.
SyntaxeTrim ( string )
Paramètre chaîne : type de chaîne, spécifie la valeur de retour de chaîne Chaîne à supprimer des espaces de début et de fin.
Lorsque la fonction est exécutée avec succès, elle renvoie une chaîne avec les espaces de début et de fin supprimés de la chaîne. Lorsqu'une erreur se produit, elle renvoie une chaîne vide ("").
Si la valeur du paramètre est nulle, une exception de pointeur nul sera levée.
Dans Oracle, les formes de trim les plus couramment utilisées sont rtrim() et ltrim(), qui permettent de supprimer les espaces sur le côté droit d'une chaîne et de supprimer les espaces sur le côté gauche d'une chaîne.
Bien sûr, la fonction de trim est plus que cela. Présentons-la en détail ci-dessous, comme exemple.
Jetons un coup d'œil à la description syntaxique de la fonction trim :
trim( [ { {leading|trailing|both} [trim_character]|trim_character} from] trim_source
1), sans utiliser de paramètres
SQL> select trim(' 11 ') aa from dual;
11
C'est la méthode d'utilisation la plus courante, utilisant les paramètres par défaut. Par défaut, TRIM le fera. être supprimés en même temps. Les espaces apparaissant avant et après la chaîne.
2) En utilisant le paramètre Both, l'effet est équivalent à la méthode 1 sans utiliser aucun paramètre
SQL> select trim(both from ' 11 ') aa from dual;
11
Le paramètre "BOTH" signifie supprimer le contenu spécifié avant et après la chaîne en même temps (les espaces sont supprimés par défaut).
3), utilisez les paramètres de début et de fin
SQL> select trim(leading from ' 11 ') aa from dual;
11
SQL> select trim(trailing from ' 11 ') aa from dual;
11
À partir du résultat, nous pouvons obtenir le délimiteur '-'. Nous pouvons constater que l'utilisation du paramètre de début peut supprimer les espaces à l'extrémité droite. de la chaîne, tandis que le paramètre de fin peut supprimer les caractères. L'espace à l'extrémité gauche de la chaîne. Tout comme rtrim() et ltrim() fournis par Oracle.
4), utilisez le paramètre trim_character
le paramètre trim_character modifie le comportement par défaut de "supprimer les espaces". Si vous souhaitez supprimer le « x » qui apparaît avant et après la chaîne « xxxxWORLDxxxx », le paramètre « trim_character » s'avère pratique.
SQL> select trim('x' from 'xxxxWORLDxxxx') aaaaa from dual;
WORLD
trim_character est utilisé avec les trois paramètres "both", "trailing" et "leading", et l'effet est le suivant, similaire à la démonstration précédente. Regardons les résultats et n'entrerons pas dans les détails. WORLD LDxxxx
Quelque chose que vous devez payer attention au paramètre "trim_character" qui n'autorise ici qu'un seul caractère, et plusieurs caractères ne sont pas pris en charge. Trim ne peut pas répondre à nos exigences en matière de suppression de plusieurs caractères, mais nous pouvons utiliser rtrim et ltrim pour le gérer. 1) Utilisez rtrimSQL> select trim('x' from 'xxxxWORLDxxxx') aaaaa from dual;
SQL> select trim(both 'x' from 'xxxxWORLDxxxx') aaaaa from dual;
xxxx MONDE xxxxOR
3) Utilisation combinée de Les fonctions RTRIM et LTRIM atteignent notre objectif rtrim et Choses à noter lors de l'utilisation de la fonction ltrim : "OU" fait cela ne signifie pas que la totalité de la chaîne « OR » correspond, mais que tout caractère « O » ou caractère « R » est supprimé.
L'application de la fonction trim est introduite. Introduisons la fonction de remplacement. Personnellement, je pense que la fonction de remplacement est plus utile lors de la suppression d'espaces. La fonction replace remplace toutes les occurrences de la deuxième expression de chaîne donnée dans la première expression de chaîne par la troisième expression. Regardons la description syntaxique de la fonction de remplacement : replace('string_replace1','string_replace2','string_replace3')
'string_replace1' L'expression de chaîne à rechercher, string_replace1 peut être des données de caractères ou des données binaires.'string_replace2' L'expression de chaîne à trouver, string_replace2 peut être une donnée caractère ou une donnée binaire. 'string_replace3' Expression de chaîne de remplacement, string_replace3 peut être des données de caractères ou des données binaires. 返回类型,如果 string_replace(1、2 或 3)是支持的字符数据类型之一,则返回字符数据;如果 string_replace(1、2 或 3)是支持的 binary 数据类型之一,则返回二进制数据。 这里我们依然以去空格为例。 aakk 与使用trim函数的结果进行对比,我们可以发现,使用replace函数不仅可以去除字符串两端的空格,也可去除字符串内部的空格。 当然,如果只是要去除字符串两端的空格,使用trim函数效率会更高。 相关推荐:oracle数据库学习教程 Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!SQL> select replace(' aa kk ',' ','') abcd from dual;