Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Ottenere una certa parte della stringa in T-SQL

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

e se la lunghezza non è una costante:

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

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

EDIT:per assicurarti che i dati non validi vengano gestiti, come nessun testo prima o nessun numero per ultimo, ecco un approccio leggermente diverso:

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