Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Obtendo uma certa parte da string em T-SQL

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

e se o comprimento não for uma constante:
declare @t table(expression varchar(100))
insert @t values('propprop234')

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

EDIT:Para garantir que dados ruins sejam tratados, como nenhum texto primeiro ou nenhum número por último, aqui está uma abordagem um pouco diferente:
select stuff(expression, 1,patindex('%[^0-9][0-9]%', expression + '0'), '') 
from @t