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

Obtenir une certaine partie de la chaîne dans T-SQL

select stuff('prop234', 1,4,'')

et si la longueur n'est pas une constante :

declare @t table(expression varchar(100))
insert @t values('propprop234')

select stuff(expression, 1, patindex('%_[0-9]%', expression), '') from @t

EDIT :Pour vous assurer que les mauvaises données sont gérées, telles que pas de texte en premier ou pas de chiffre en dernier, voici une approche légèrement différente :

select stuff(expression, 1,patindex('%[^0-9][0-9]%', expression + '0'), '') 
from @t