0

SQL Server で ID フィールドの乱数を作成する方法は?

1000から9999までの乱数を作りたいです。

この構造をどのように作成しますか?

4

3 に答える 3

2

RAND組み込み関数です。それはあなたのニーズを満たすはずです。これにより、望ましい結果が得られるはずです。select cast(rand() * 8999 + 1000 as int)

http://msdn.microsoft.com/en-us/library/ms177610%28v=SQL.105%29.aspx

于 2013-01-08T03:59:11.143 に答える
1

乱数を一意の非反復として生成するかどうかについては言及していません。

DECLARE @Random INT;
DECLARE @Upper INT;
DECLARE @Lower INT;

---- This will create a random number between 1 and 999
SET @Lower = 1000 ---- The lowest random number
SET @Upper = 9999 ---- The highest random number
SELECT @Random = ROUND(((@Upper - @Lower -1) * RAND() + @Lower), 0)
SELECT @Random;

ソース

于 2013-01-08T04:30:02.450 に答える
0

別の方法

select number/power(10,len(number)-4) as number from
(
select top 10000 abs(checksum(newid())) as number 
from sysobjects s1 cross join sysobjects s2
) as T

これも参照してくださいhttp://beyondrelational.com/modules/2/blogs/70/posts/10810/generating-random-numbers-part-ii.aspx

于 2013-01-08T08:01:50.310 に答える