Maison > base de données > tutoriel mysql > Comment extraire le dernier élément d'une chaîne séparée par une barre oblique en SQL ?

Comment extraire le dernier élément d'une chaîne séparée par une barre oblique en SQL ?

Patricia Arquette
Libérer: 2024-12-30 13:26:14
original
672 Les gens l'ont consulté

How to Extract the Last Element from a Forward-Slash Separated String in SQL?

Extraction du dernier élément de la chaîne fractionnée dans la base de données

Dans un tableau composé de chaînes contenant plusieurs éléments séparés par des barres obliques (/), le l'objectif est d'extraire le dernier élément de chaque chaîne. Par exemple, étant donné les chaînes suivantes :

Articles/Search/ArtMID/2681/ArticleID/2218/Diet.aspx
OurStory/MeettheFoodieandtheMD.aspx
TheFood/OurMenu.aspx
Copier après la connexion

Le résultat souhaité doit être :

Diet.aspx
MeettheFoodieandtheMD.aspx
OurMenu.aspx
Copier après la connexion

Approche SQL

Pour y parvenir dans SQL, la requête suivante peut être utilisée :

SELECT SUBSTRING( string , LEN(string) -  CHARINDEX('/',REVERSE(string)) + 2  , LEN(string)  ) FROM SAMPLE;
Copier après la connexion

Cette requête fonctionne par :

  1. Utiliser la fonction REVERSE() pour inverser la chaîne, ce qui place le dernier élément au début.
  2. Utiliser CHARINDEX() avec la chaîne inversée pour trouver la position de le dernier /.
  3. Calcul de la position de départ du dernier élément en soustrayant la position du dernier '/' de la longueur totale de la chaîne d'origine et en ajoutant 2 (pour tenir compte de la position après le '/' et de la longueur de l'élément).
  4. Utilisation de la fonction SUBSTRING() pour extraire le dernier élément en fonction de la position de départ et de la longueur calculées.

Cette approche extrait efficacement le dernier élément de chaque chaîne en inversant la chaîne, en localisant le dernier /, puis en utilisant ces résultats pour déterminer le point de départ de l'extraction de la sous-chaîne.

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