Maison > base de données > tutoriel mysql > Comment trouver la dernière occurrence d'une sous-chaîne dans MySQL ?

Comment trouver la dernière occurrence d'une sous-chaîne dans MySQL ?

Patricia Arquette
Libérer: 2024-11-10 21:08:02
original
417 Les gens l'ont consulté

How to Find the Last Occurrence of a Substring in MySQL?

Détermination de la dernière occurrence d'une sous-chaîne dans MySQL

MySQL fournit la fonction INSTR() pour identifier la première instance d'une sous-chaîne dans une chaîne. Cependant, trouver la dernière occurrence pose un défi car il n'existe pas de fonction intégrée dédiée uniquement à cet effet.

Solution :

MySQL propose une méthode alternative pour accomplir cette tâche en utilisant la fonction LOCATE et la fonction REVERSE, comme démontré ci-dessous :

SELECT CHAR_LENGTH("Have_a_good_day") - LOCATE('_', REVERSE("Have_a_good_day"))+1;
Copier après la connexion

Cette expression calcule la dernière position d'index de la sous-chaîne spécifiée, qui dans cet exemple est le trait de soulignement (_).

Pour obtenir la sous-chaîne avant la dernière occurrence, utilisez :

SELECT LEFT("first_middle_last", CHAR_LENGTH("first_middle_last") - LOCATE('_', REVERSE("first_middle_last")));
Copier après la connexion

Cela renverra la chaîne "first_middle". Pour inclure le délimiteur, ajustez la requête comme suit :

SELECT LEFT("first_middle_last", CHAR_LENGTH("first_middle_last") - LOCATE('_', REVERSE("first_middle_last"))+1);
Copier après la connexion

Pour localiser la sous-chaîne après la dernière occurrence, considérez la fonction SUBSTRING_INDEX :

SELECT SUBSTRING_INDEX("first_middle_last", '_', -1);
Copier après la connexion

Cette expression donnera la sous-chaîne " dernier."

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal