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

Como selecionar uma string entre duas strings em uma coluna no SQL Server?


Para uma amostra de dados abaixo
declare @table table (id int identity(1,1), data varchar(1000), descr varchar(1000))

insert into @table values ('Manufacturer Name : Manufacturer 1 Manufacturer Part : asjdfj','First Manufacturer')
insert into @table values ('Manufacturer Name : Manufacturer 2 Manufacturer Part : asjsadfasdfdfj','Second Manufacturer')
insert into @table values ('Manufacturer Name : Manufacturer 3 Manufacturer Part : er6ty','Third Manufacturer')

você pode usar
select substring(data, 
                 charindex('Manufacturer Name : ', data) + len('Manufacturer Name : '),
                 charindex('Manufacturer Part : ',data) - len('Manufacturer Part :') - 2) as Manufacturer_Name
       , descr
from @table

Se você perceber que estou removendo 2 caracteres no final da substring para eliminar 'M' de Manufacturer Part e o Espaço antes do texto real. Você pode usar RTRIM mas eu escolhi assim.