在表A里有字段A1,想执行所有行:A1=A1+随机数。应该怎么写?

解决方案 »

  1.   

     Select (A1+CAST(10000*RAND()   AS   INT)) As A1 From table
      

  2.   

    在表A里有字段A1,想执行所有行:A1=A1+随机数。应该怎么写?
    要生成15-30之间的随机数呢?
      

  3.   


    DECLARE @recordCount int
    DECLARE @counter smallint
    SET @counter = 1
    SELECT @recordCount=count(*) FROM aWHILE @counter < @recordCount
       BEGIN
          UPDATE A SET A1=A1+RAND(@counter)
          --SELECT RAND(@counter) Random_Number
          SET NOCOUNT ON
          SET @counter = @counter + 1
          SET NOCOUNT OFF
       END
    GO
      

  4.   

    在表A里有字段A1,想执行所有行:A1=A1+随机数。应该怎么写?
    -----
    刚才考虑掉了一个问题,那就是,上面那种情况后面加的随机数都是相等的.
    为此我们必须一条条的更新以达到我们的目的.
    生成15-30之间的随机数为select cast( floor(rand()*15) as int)+15
    你也可以把数据读取到前台程序当中去修改.
    在数据库当中操作.有点伤神
      

  5.   

    # symbol441:
    你也可以把数据读取到前台程序当中去修改.
    在数据库当中操作.有点伤神 
    -----------------------------------------------------哦,也就是说还是要一条一条更新哦!!