Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Mysql insere data e hora aleatória em um determinado intervalo de data e hora


Segue um exemplo que deve ajudar:
INSERT INTO `sometable` VALUES(
    FROM_UNIXTIME(
        UNIX_TIMESTAMP('2010-04-30 14:53:27') + FLOOR(0 + (RAND() * 63072000))
    )
)

Ele usa a data 2010-04-30 14:53:27 como base, converte isso em um carimbo de data/hora Unix e adiciona um número aleatório de segundos de 0 a +2 anos à data base e a converte novamente em DATETIME.

Deve ser bem próximo, mas em períodos de tempo mais longos, anos bissextos e outros ajustes o atrapalharão.