Maison >base de données >tutoriel mysql >Comment extraire des fragments de texte spécifiques dans SQL Server à l'aide de SUBSTRING et CHARINDEX ?

Comment extraire des fragments de texte spécifiques dans SQL Server à l'aide de SUBSTRING et CHARINDEX ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-22 17:19:10516parcourir

How to Extract Specific Text Fragments in SQL Server Using SUBSTRING and CHARINDEX?

Récupération de fragments de texte spécifiques dans SQL Server

SQL Server fournit des fonctions polyvalentes pour extraire des parties spécifiques de chaînes de texte. Cette question concerne l'isolation d'un segment de texte d'une entrée plus longue en ciblant les caractères avant et après un délimiteur prédéfini.

Pour répondre à cette exigence spécifique, vous pouvez utiliser la fonction SUBSTRING. La syntaxe de SUBSTRING est :

SUBSTRING(<expression>, <start>, <length>)
  • spécifie la chaîne de texte à partir de laquelle la sous-chaîne sera extraite.
  • indique la position du caractère dans l' où commence l'extraction de la sous-chaîne (index basé sur 1).
  • spécifie le nombre de caractères à extraire de la position de départ.

Récupération de texte après un délimiteur

Pour extraire la partie de texte après un caractère spécifique, tel sous forme de barre oblique (/), vous pouvez utiliser la fonction CHARINDEX. Cette fonction renvoie la première occurrence d'une sous-chaîne spécifiée dans une chaîne de texte.

Le code pour récupérer le texte après une barre oblique serait :

SELECT SUBSTRING(@text, CHARINDEX('/', @text) + 1, LEN(@text))

Par exemple, si le texte saisi est " images/test.jpg", le résultat sera "test.jpg".

Récupération du texte avant un Délimiteur

Pour extraire la partie de texte avant un caractère spécifique, tel qu'un point (.), vous pouvez utiliser une approche similaire :

SELECT SUBSTRING(@text, 1, CHARINDEX('.', @text) - 1)

Pour la même chaîne d'entrée , le résultat sera "images/test".

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