如何在SQL SERVER的字符串中的x和y char之间替换字符。例如,如果我有:TEST123456在结尾处有TE ** 56。我不知道字符串会持续多长时间,但我知道我需要屏蔽字符串中x和y之间的字符
您可以使用REPLICATE()和STUFF()作为:
REPLICATE()
STUFF()
DECLARE @String VARCHAR(20)='TEST123456', @Start INT = 3, @End INT = 5; SELECT @String AS MyString, STUFF(@String, @Start, @End - @Start, REPLICATE('*', @End - @Start)) AS Mask;
当您说 “我不知道字符串会多长”时 ,该REPLICATE()函数将根据@Start和@End提供您返回的星号“ *” 。
@Start
@End