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
Create a random string of digits
-
09-07-2023 - |
質問
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
解決
他のヒント
Try this
select Cast(Round(Rand()*power(10,@Len),0) as Varchar(30))
所属していません StackOverflow