请教各位高手,我数据库中有一张用户表(uid)的密码字段(pwd)一共有1万多条记录,请问用什么语句能把这一万多条记录更新为不同的6位随机整数?我自己用update加rand()函数更新后全部都是同一个数字。请多多帮助,多谢!

解决方案 »

  1.   

    CREATE TABLE t1
    (
        DB int
    )
    INSERT INTO t1 VALUES ( null)
    INSERT INTO t1 VALUES ( null)
    INSERT INTO t1 VALUES ( null)
    declare @no int
    set @no=abs(CHECKSUM(NEWID())%1000000)
    update t1 set DB=@no,@no=abs(CHECKSUM(NEWID())%1000000+1)select * from t1
    /*
    DB
    ------
    629722
    712064
    395330
      

  2.   

    update tb
    set pwd = cast(RAND() * 1000000 as int)
      

  3.   

    update t1 set pwd=abs(CHECKSUM(NEWID())%1000000+1)
      

  4.   


    这一句是直接将pwd字段所有的值都更新为同一随机数,我要的是每条记录都获取到不同的随机数。请问用 游标 的方式可以做到吗?该如何写语句哪?我自己试了试,没弄出来,还请高手指点,感激不尽!