Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Une requête SQL pour sélectionner une chaîne entre deux chaînes connues

Le problème est que la deuxième partie de votre argument de sous-chaîne inclut le premier index. Vous devez soustraire le premier index de votre deuxième index pour que cela fonctionne.

SELECT SUBSTRING(@Text, CHARINDEX('the dog', @Text)
, CHARINDEX('immediately',@text) - CHARINDEX('the dog', @Text) + Len('immediately'))