我搜索了帖子,我能找到的最短最简单的是
CONVERT(varchar(255), NEWID())
但是,这符合预期会创建一个字母数字字符串。 Translate
在Oracle中可用,但我正在使用SQL Server,这里没有类似的东西。但是我想要一个只有字符的字符串。
我可以就此得到一些指示吗?非常感谢任何帮助。
答案 0 :(得分:1)
只是代码的“丑陋”演变,但它有效
DECLARE @NewId nvarchar(45)
set @NewId = newid()
SELECT replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(@NewId, 1, 'A'), 2, 'B'), 3, 'C'), 4, 'D'), 5, 'E'), 6, 'F'), 7, 'G'), 8, 'H'), 9, 'I'), 0, 'L'), '-', 'M')