日期:2014-05-18  浏览次数:20318 次

如果更新某个字段为某些随机值
我有一个表的字段,现在值都是为1,记录为10W条,我想把这个字段所有记录的值设为1,2,3,a,b,c这几个随机值。
SQL该怎么写啊?有哪位大侠可以帮帮忙。急!

------解决方案--------------------
SQL code

DECLARE @i VARCHAR(1)

SET @i = LEFT(NEWID(),1)

SELECT CASE ISNUMERIC(@i) 
            WHEN 1 THEN 
                CASE WHEN @i%3 = 0 THEN '1' ELSE CONVERT(VARCHAR,@i%3) END 
            WHEN 0 THEN 
                CASE ASCII(@i)%65 WHEN  0 THEN 'a' 
                          WHEN  1 THEN 'b' 
                                                  ELSE 'c' END 
        end