可能重复:
在 MySQL 中插入/更新随机日期
如何在mysql中随机更改日期+- 5天?
UPDATE student SET date = date*(RAND()*-5,+5)
SELECT 5 + ROUND(RAND()) * -10
将给出5或-5,您可以将其与DATE_ADD()
函数结合使用。
试试这个:
UPDATE `student` SET `date` = DATE_ADD(`date`, INTERVAL ((1 - ROUND((RAND()))*2)*5) DAY)
以下查询输出随机日期 +-5 天后 (CURDATE())
select ADDDATE(CURDATE(), INTERVAL ROUND(RAND()*10)-5 DAY)
尝试这样的事情:
select case when (RAND()*10) >= 5 then date_add(<date_col>, INTERVAL 5 DAY)
else date_add(<date_col>, INTERVAL -5 DAY)
end
from <your_table>
你可以像这样更新你的表:
UPDATE student SET `date`=
case when (RAND()*10) >= 5 then date_add(`date`, INTERVAL 5 DAY)
else date_add(`date`, INTERVAL -5 DAY)
end;
UPDATE student SET date = ADDDATE(date, INTERVAL ROUND((rand() * 9) - 4) DAY);