LEFT
、RIGHT
およびCHARINDEX
as;を使用します。
declare @start varchar(50)='{strong}', @end varchar(50)='{/strong}'
select @var2 = left(@var1,charindex(@end,@var1,1)+len(@end)),
@var1= right(@var1,len(@var1)-(charindex(@end,@var1,1)+len(@end)))
SQL デモ 1
これは少しクレイジーですが、一般的で、一部のテキストbefore '{strong}' tag
でも機能します。
declare
@var1 varchar(100)= 'front text{strong} this is strong{/strong} this is not strong',
@var2 varchar(100)= ''
declare @start varchar(50)='{strong}', @end varchar(50)='{/strong}'
select @var2 = substring(myString,ci1,ci2+len(@end)-ci1),
@var1 = right(myString,len(myString) - (ci2+ len(@end)))
from (
select @var1 myString, charindex(@start,@var1,1) ci1,
charindex(@end,@var1,charindex(@start,@var1,1)) ci2
) T
select @var2 var2 ,@var1 var1
SQL デモ 2
--Results
VAR2 VAR1
{strong} this is strong{/strong} this is not strong