2013-03-01 5 views

답변

3

와 문자열에서 첫번째 @와 세 번째 @를 교체하려고이 charindex()stuff() 사용 :

Fiddle demo 1

declare @s1 varchar(100)= '[email protected]@[email protected]@', @count int = 0 

select @count = charindex('@',@s1,@count+1), 
     @s1 = case isremove when 1 then 
      stuff(@s1, charindex('@',@s1,@count) ,1,'K') else @s1 end 
from (values (1),(0),(1)) t(isremove) 

Fiddle demo 2

declare @s1 varchar(100)= '[email protected]@[email protected]@' 

select stuff(stuff(@s1,first,1,'K'),third,1,'K') 
from (
select charindex('@',@s1,1) first, 
    charindex('@',@s1,charindex('@',@s1,charindex('@',@s1,1)+ 1)+1) third 
)x 
+0

는 교체 할 필요가 첫 번째와 세 번째 문자이어야한다. – Sunny

+0

@Sundeep, 감사합니다! 결정된 – Kaf

관련 문제