Jam*_*123 5 sql t-sql sql-server sql-server-2005 sql-server-2008
我需要在sql中更新前100行(一个字段)的随机数.随机数应小于100.怎么办?
Ale*_*Aza 12
在SQL 2008中
update top (100) MyTable
set MyField = cast(cast(crypt_gen_random(1) as int) * 100.0 / 256 as int)
Run Code Online (Sandbox Code Playgroud)
我相信同样适用于SQL 2005.
[编辑]
如果它在SQL 2005中不起作用,您可以这样做:
update top (100) MyTable
set MyField = abs(cast(newid() as binary(6)) % 100)
Run Code Online (Sandbox Code Playgroud)