Maison >base de données >tutoriel mysql >Comment extraire le nième mot et compter les occurrences de mots dans les chaînes MySQL ?

Comment extraire le nième mot et compter les occurrences de mots dans les chaînes MySQL ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-05 20:04:11243parcourir

How to Extract the Nth Word and Count Word Occurrences in MySQL Strings?

Extraction du Nième mot et comptage des occurrences de mots dans les chaînes MySQL

De nombreux utilisateurs de MySQL cherchent à manipuler des chaînes à l'aide de regex, par exemple en extrayant le spécifié nième mot ou comptage des occurrences de mots. Cependant, la syntaxe traditionnelle des expressions régulières MySQL s'adresse principalement à la correspondance de texte plutôt qu'à l'extraction de sous-chaînes spécifiques.

Une solution potentielle pour cela consiste à utiliser la méthode d'extraction de sous-chaînes. Par exemple, si le résultat souhaité est d'extraire le deuxième mot d'une chaîne MySQL, l'extrait de code suivant peut être utilisé :

SUBSTRING(
  sentence,
  LOCATE(' ', sentence) + CHAR_LENGTH(' '),
  LOCATE(' ', sentence,
  ( LOCATE(' ', sentence) + 1 ) - ( LOCATE(' ', sentence) + CHAR_LENGTH(' ') )
)

Pour clarifier, ce code localise d'abord le premier caractère espace, ajoute la longueur du caractère espace à sa position, puis localise le deuxième caractère espace. Une fois les positions de ces deux espaces établies, la différence entre eux (moins la longueur de l'espace) est utilisée comme argument de longueur pour l'extraction de la sous-chaîne.

Cette méthode capture efficacement le deuxième mot de la phrase. . En combinant cette technique avec une clause groupe par, vous pouvez également compter les occurrences de chaque mot extrait, résolvant avec précision à la fois les problèmes d'extraction du nième mot et de comptage des occurrences de mots.

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