在表中为特定范围插入随机值

时间:2015-04-09 11:08:01

标签: sql sql-server sql-server-2008

我有一个名为Orders的表和该表中名为OrderID的列。最初,OrderID的值是手动给出的,但现在我必须将这些值更改为100到999之间的数字随机。

我有近600行...当我尝试以下代码时,它为所有订单分配了一个随机数。请帮助我,并解释一下解决这个问题的简单方法。

UPDATE Orders
 SET OrderID= RAND()*(999-100)

1 个答案:

答案 0 :(得分:0)

试试这样:

UPDATE Orders 
SET OrderID = ABS(Checksum(NewID()) % 900) + 100

<强> SQL FIDDLE DEMO