我正在尝试使用相同长度的随机字母数字数据替换重复的字母数字数据。
列中的当前数据:
LY00CMY297
7Q7GC4J170
7Q7GC4J170(Duplicate Record)
7Q7GC4J170(Duplicate Record)
2MQ493J561
2MQ493J648
预期结果:
LY00CMY297
7Q7GC4J170
***(Need random alphanumeric data of length 10)
***(Need random alphanumeric data of length 10)
2MQ493J561
2MQ493J648
有人可以帮忙吗?
答案 0 :(得分:5)
您可以尝试以下方法:
;with cte as (
select *,ROW_NUMBER() over (partition by ColumnName order by ColumnName) rn,right(convert(varchar(36), newid()),10) as New from TableName
)
update cte set ColumnName=New
where rn>1;
NewID()函数将始终创建唯一ID。