SQL Server Update 一个列的数据为随机数

原文:https://www.cnblogs.com/Bin-x/p/4153595.html



1、SQL如下:

SELECT  convert(varchar(50),360+ABS(CHECKSUM(NEWID()))%7+1) +'.'+ convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)+ convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)+ convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)



UPDATE dbo.tb_SensorRecord 
SET NewValue1=(
	convert(varchar(50),310+ABS(CHECKSUM(NEWID()))%7+1) + '.' + convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)+ convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)+ convert(varchar(50),ABS(CHECKSUM(NEWID()))%7+1)
)
WHERE GetTime>='2019-11-30' AND GetTime<='2020-02-01' AND Code='625169'



SELECT NewValue1 FROM dbo.tb_SensorRecord WHERE GetTime>='2019-11-30' AND GetTime<='2020-02-01' AND Code='625169' ORDER BY ID ASC


2、效果如图:



3、还有一个测试的SQL,不过在Update语句中不能用

--随机三位小数
select cast(ceiling(rand()*1000)/1000 as decimal(18,3))

--随机一位数
SELECT ROUND(((10 - 1 -1) * RAND() + 1), 0)

posted @ 2020-08-03 15:28  古兴越  阅读(2449)  评论(0编辑  收藏  举报