Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment supprimer les caractères de début indésirables d'une chaîne dans MySQL

Problème :

Vous souhaitez supprimer une séquence de caractères au début d'une chaîne.

Exemple :

Notre base de données a une table nommée product avec des données sur trois colonnes :id , nom , et modèle .

identifiant nom modèle
1 regarder Lx0A123
2 montre intelligente Lx0W34
3 photo de l'horloge Lx0G100

Découpons le code modèle de chaque nouveau produit, en supprimant les caractères inutiles (Lx0) au début.

Solution 1 :

Nous utiliserons le TRIM() une fonction. Voici la requête que vous écririez :

SELECT name, 
  TRIM(LEADING 'Lx0' FROM model ) AS new_model_code
FROM product;

Voici le résultat :

nom nouveau_code_modèle
regarder A123
montre intelligente W34
photo de l'horloge G100

Discussion :

Utilisez le TRIM() fonction avec le LEADING mot-clé pour supprimer des caractères au début d'une chaîne. TRIM() vous permet de supprimer des caractères ou des espaces spécifiques au début, à la fin ou aux deux extrémités d'une chaîne. Cette fonction prend les arguments suivants :

  • Un mot-clé facultatif qui spécifie la ou les extrémités à couper. Par défaut, c'est BOTH , mais vous pouvez définir LEADING (supprimer du début) ou TRAILING (supprimer de la fin).
  • Une chaîne définissant le(s) caractère(s)/espace(s) que vous souhaitez supprimer de la chaîne (dans notre exemple, la séquence "Lx0").
  • Le FROM mot-clé.
  • Le nom de la chaîne/colonne à découper (dans notre exemple, le modèle colonne).

Dans notre exemple, cela ressemble à :

TRIM(LEADING 'Lx0' FROM model)