这里问的问题是
用相同的日期时间更新。
我需要的是在一个范围内用不同的随机日期时间更新每一行。
和:
strftime('%s', enddate) - strftime('%s', startdate)
您可以获得 2 个日期时间之间的秒数差异。
和:
abs(random() % (strftime('%s', enddate) - strftime('%s', startdate) + 1))
您可以获得一个随机整数,大于或等于0
,即小于或等于 2 个日期时间之间的差异(以秒为单位)。
您可以做的是将此随机秒数添加到范围的开始日期,以在该范围内创建随机日期时间:
update tablename
set datecol = datetime(
startdate,
abs(random() % (strftime('%s', enddate) - strftime('%s', startdate) + 1)) || ' second'
)
datecol
是表中的日期列,
startdate
是enddate
范围的边界。