SELECT
CASE WHEN ROW_NUMBER() OVER(PARTITION BY f43 ORDER BY f43) > 0 THEN f43 + right('0000'+convert(varchar(20),ROW_NUMBER() OVER(PARTITION BY f43 ORDER BY f43)),4) ELSE f43 END AS f43
FROM sp
RIGHT('位数'+CAST(要判断的字段 AS nvarchar(50)),位数 )
SELECT
CASE WHEN ROW_NUMBER() OVER(PARTITION BY f43 ORDER BY f43) > 0 THEN f43 + right('0000'+convert(varchar(20),ROW_NUMBER() OVER(PARTITION BY f43 ORDER BY f43)),4) ELSE f43 END AS f43
FROM sp
RIGHT('位数'+CAST(要判断的字段 AS nvarchar(50)),位数 )