如何替换选择查询结果的最后4个字符



假设我有一个"SELECT*FROM TABLE",它会导致很多行和很多列。

如果我不想用X或*替换第三列中的最后4个字符,我该如何编写查询?

在sql server中,以下操作将起作用:

DECLARE @test VARCHAR(100)= '123456789'
SELECT STUFF(@test, LEN(@test)-3, 4, 'XXXX')

返回:12345XXXX

这可能有助于

declare @value varchar(100) = 'Replace 4 characters '
select LEFT (@value, LEN(@value)-4) + REPLICATE('X',4)

尝试此查询

select LEFT (SOCIALNUM , LEN(SOCIALNUM )-4) + REPLICATE('X',4) ,* from CLIENT

如果字符串长于4个,则将最后4个字符替换为"XXXX">

SELECT IIF(LEN(Column3) > 4, STUFF(Column3, LEN(Column3) - 3, 4, 'XXXX'), Column3)

或者如果你知道长度总是10

SELECT STUFF(Column3, LEN(Column3) - 3, 4, 'XXXX')

我知道我参加派对有点晚,但我喜欢贡献,所以让我们从另一个角度来尝试一下,因为我们可能只需要ssn的出生日期,对吧?(假设,开枪(

SELECT LEFT(SOCIALNUM,6)+'****',* 
FROM CLIENT
WHERE CLIENTTYPE = '12'

试试这个,

SELECT Replace(Name,right(Ltrim(rtrim(Name((,4(,'XXXX'(,Name自[dbo]。【员工】

最新更新