关于sql:如何使用随机数据更新字段?

关于sql:如何使用随机数据更新字段?

How to update a field with random data?

我在具有1000多个记录的数据库中有一个新的varchar(10)字段。 我想更新表格,以便可以在字段中获取随机数据。 我在寻找SQL解决方案。

我知道我可以使用游标,但这似乎不太好。

MS-SQL 2000,BTW


1
UPDATE MyTable SET RandomFld =  CONVERT(VARCHAR(10), NEWID())


类似于(未经测试的代码):

1
2
UPDATE yourtable
SET yourfield= CHAR(32+ROUND(RAND()*95,0));

显然,如果要最多十个字符,则串联更多的随机字符。
查询优化器可能会将所有字段设置为相同的值。在这种情况下,我会尝试

1
SET yourfield=LEFT(yourfield,0)+CHAR

诱使优化器每次表达式重新计算。


为什么不使用当前时间戳的md5校验和的前10个字符和一个随机数?


此外,如果您只是为了进行测试或一次使用,我会说真的没有必要采用优雅的解决方案。


您可能可以根据需要查找类似的内容以加载值的测试数据集


如果您在SQL Server中,则可以使用

1
CAST(RAND() AS VARCHAR(10))

编辑:这将仅在迭代内工作。作为多行插入的一部分,它将对每一行使用相同的RAND()结果。


这个怎么样:

1
UPDATE TBL SET FIELD = LEFT( CONVERT(VARCHAR(255), @myid),10)

如果这只是一次将数据输入系统的事情,那么我真的不觉得使用游标有什么问题,就像我讨厌游标确实占据了位置一样。


推荐阅读

    linux操作数据库命令?

    linux操作数据库命令?,地址,服务,系统,密码,数据库,工具,名字,首页,命令,参

    linux下载数据命令?

    linux下载数据命令?,软件,工具,数据,系统,代理,官网,网络,名称,网址,盘中,在l

    做数据linux常用命令?

    做数据linux常用命令?,工作,系统,基础,网络,数据,标准,管理,工具,地址,命令,l

    linux数据库升级命令?

    linux数据库升级命令?,系统,信息,时间,最新,网络,名字,地址,管理,简介,传播,l

    数据库导出linux命令?

    数据库导出linux命令?,密码,数据,数据库,情况,地址,系统,工具,网上,名字,命

    linux命令解决方案?

    linux命令解决方案?,系统,管理,数据,电子,工作,电脑,软件,情况,不了,档案,lin

    linux命令与数据流?

    linux命令与数据流?,工作,地址,系统,信息,命令,目录,标准,网络,管理,常用命

    linux恢复数据库命令?

    linux恢复数据库命令?,工具,系统,软件,数据,盘中,密码,命令,备份,数据库,文

    linux储存命令数据?

    linux储存命令数据?,系统,工作,地址,信息,标准,命令,工具,实时,数据,分析,lin

    linux储存命令数据?

    linux储存命令数据?,系统,工作,地址,信息,标准,命令,工具,实时,数据,分析,lin

    linux命令大全数据库?

    linux命令大全数据库?,服务,系统,平台,状态,软件,通用,环境,数据,神州,地址,

    linux上数据库的命令?

    linux上数据库的命令?,服务,系统,信息,地址,命令,密码,工具,管理,数据,单位,

    linux命令dm数据库?

    linux命令dm数据库?,地址,软件,时间,设备,名字,服务,位置,名称,公司,命令,lin

    linux存储数据命令?

    linux存储数据命令?,系统,管理,数据,设备,情况,地址,工作,命令,服务,平台,Lin

    linux下抓取字段命令?

    linux下抓取字段命令?,数据,系统,命令,单位,报告,工具,字符串,文件,范本,样

    linux数据库查找命令?

    linux数据库查找命令?,位置,名称,状态,服务,软件,信息,系统,命令,名字,密码,

    linux数据库同步命令?

    linux数据库同步命令?,信息,系统,汽车,车辆,服务,工作,通信,一致,分析,数据,D

    linux提取字段串命令?

    linux提取字段串命令?,数字,字符串,状态,工具,命令,文件,范本,样式,正则,字

    linux建立数据库命令?

    linux建立数据库命令?,软件,系统,工作,数据,密码,工具,数据库,一致,网络,服

    linux命令进数据库?

    linux命令进数据库?,地址,系统,名字,服务,密码,命令,读法,数据库,操作系统,