Maison >base de données >tutoriel mysql >Comment extraire le troisième champ délimité par des espaces d'une chaîne dans MySQL ?

Comment extraire le troisième champ délimité par des espaces d'une chaîne dans MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-25 08:39:28498parcourir

How to Extract the Third Space-Delimited Field from a String in MySQL?

Récupérer le troisième index d'espace dans une chaîne avec MySQL

Trouver la position du troisième espace dans une chaîne est une tâche courante dans une chaîne manipulation. Par exemple, dans le cas décrit, le but est d'extraire le champ de longueur variable 'CCCC' d'une liste de longueur fixe séparée par des espaces. Dans MySQL, une méthode simple peut être utilisée pour y parvenir.

Fonction SUBSTRING_INDEX

Pour localiser le troisième espace, MySQL fournit la fonction SUBSTRING_INDEX. Cette fonction prend trois arguments :

  1. La chaîne d'entrée
  2. Le délimiteur (espace dans ce cas)
  3. L'occurrence à localiser

En utilisant la fonction SUBSTRING_INDEX deux fois, nous pouvons atteindre notre objectif :

Appel de fonction interne :

SUBSTRING_INDEX(field, ' ', 3)

Cette instruction renvoie la sous-chaîne jusqu'au troisième espace inclus, ce qui donne 'AAAA BBBB CCCC'.

Appel de fonction externe :

SUBSTRING_INDEX(SUBSTRING_INDEX(field, ' ', 3), ' ', -1)

L'appel de fonction externe isole 'CCCC' en extrayant la sous-chaîne à partir de la fin du résultat obtenu à partir de l'appel de fonction interne, jusqu'au suivant et en excluant espace.

En résumé, en utilisant efficacement la fonction SUBSTRING_INDEX, nous pouvons localiser et extraire efficacement la sous-chaîne souhaitée, quelle que soit sa longueur variable.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn