MySQL Generate Random Date
For testing, it can be nice to generate random date fields in sql. Because this version uses UNIX_TIMESTAMP it is limited to the range 1970 to 2038.
-- This will generate a random date between now and 2003
SELECT FROM_UNIXTIME(RAND() * (UNIX_TIMESTAMP() - UNIX_TIMESTAMP('2003-01-01')) + UNIX_TIMESTAMP('2003-01-01'));
UPDATE mytable
SET datefield =
FROM_UNIXTIME(RAND() * (UNIX_TIMESTAMP() - UNIX_TIMESTAMP('2003-01-01')) + UNIX_TIMESTAMP('2003-01-01'))
WHERE 1
AND somevalue=someothervalue;code snippets are licensed under Creative Commons CC-By-SA 3.0 (unless otherwise specified)
|