sql >> Databasteknik >  >> RDS >> Mysql

Mysql infoga slumpmässig datumtid i ett givet datumintervall

Här är ett exempel som borde hjälpa:

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

Den använder datumet 2010-04-30 14:53:27 som bas, konverterar det till en Unix-tidsstämpel och lägger till ett slumpmässigt antal sekunder från 0 till +2 år till basdatumet och konverterar det tillbaka till ett DATUMTIDS.

Det borde vara ganska nära, men över längre tidsperioder kommer skottår och andra justeringar att försvinna.



  1. Skriv ett tal med två decimaler SQL Server

  2. Hur ändrar man datumformatet från MM/DD/ÅÅÅÅ till ÅÅÅÅ-MM-DD i PL/SQL?

  3. Hur man automatiserar pivottabellsfrågor i MySQL

  4. Hur man hittar porten för MS SQL Server 2008?