質問

I need to create a random string of digits of given length

CREATE FUNCTION UniqConvert
(@calue as varchar(max),
@len as int)

The output should be of the length @len and should be unique per input @value

I already asked similar question: Create random string of digits T-SQL This one has different concept

役に立ちましたか?

解決

declare @len int
set @len = 3
DECLARE @Random INT      
DECLARE @Upper INT      
DECLARE @Lower INT
SET @Lower = power(10,@Len-1) ---- The lowest random number      
SET @Upper = power(10,@Len )-1 ---- The highest random number      
SELECT @Random = ROUND(((@Upper - @Lower -1) * RAND() + @Lower), 0) 

select  @Random

他のヒント

Try this

   select Cast(Round(Rand()*power(10,@Len),0) as Varchar(30))
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top