Découper un texte après un caractère avec SQL Server

Comment découper un texte après un caractère particulier avec SQL Server? comme par exemple un nom de fichier : “fichier.txt” pour séparer le nom du fichier de son extension. En effet, il est évident que découper une chaîne juste avant le caractère “.” doit se faire de manière dynamique, c’est à dire quelle que soit la position du caractère.

Comment découper un texte après après un caractère prédéfini avec une requête SQL?

Tout d’abord, pour découper une chaîne de caractères avec SQL Server juste après un certain caractère, utiliser les fonctions textes suivantes:

Un exemple de code pour découper facilement une chaîne de caractère juste après un caractère.

Par ailleurs, cet exemple n’est pas récursif, mais pour le rendre récursif, intégrer la logique dans une boucle. Ajuster ensuite la variable qui contient la position dans la chaîne principale.

Exemple de code SQL pour découper un texte après un caractère spécifique:  :

-- Déclaration des variables utilisées comme chaine de départ, chaine de résultat et le caractère utilisé
declare @ChaineDepart nvarchar(100)
declare @Resultat nvarchar(100)
declare @Caractere nvarchar(10)

-- Définition de la chaîne de caractère
set @ChaineDepart = 'DEBUT_DE_CHAINE.FIN_DE_CHAINE'

-- Définition du caractère ou de la chaîne de caractère à chercher pour couper la chaîne en deux
set @Caractere = '.'
set @Resultat = substring(@ChaineDepart,CHARINDEX(@Caractere, @ChaineDepart)+1,len(@ChaineDepart))

select @ChaineDepart as 'Chaine de Départ'
select @Resultat as 'Chaine de Résultat'

Cette fois, voici un exemple pour découper une chaîne de caractère de manière récursive sous SQL Server en langage T-SQL. 

Soyez le premier à commenter

Laisser un commentaire