Sql 用随机时间更新日期
我有一个Sql 用随机时间更新日期,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,我有一个datetime列,它们都在上午12:00。有没有一种方法可以在保持相同日期(天)值的同时,用随机的小时数、分钟数更新到最接近的1/2小时 这里有一个使用dateadd的选项: update Activities set ActivityDate = DateAdd(minute, 30 * (abs(checksum(NewId())) % 47), ActivityDate); 这是一篇关于生成随机数的好文章。使用该值,
datetime
列,它们都在上午12:00。有没有一种方法可以在保持相同日期(天)值的同时,用随机的小时数、分钟数更新到最接近的1/2小时
这里有一个使用
dateadd
的选项:
update Activities
set ActivityDate = DateAdd(minute,
30 * (abs(checksum(NewId())) % 47), ActivityDate);
%47
,因为一天中有1440分钟——在同一天中分为48个可能的半小时段
update Activities
set ActivityDate = DateAdd(minute,
30 * (abs(checksum(NewId())) % 47), ActivityDate);