モチベーション
テストデータを作るのにcreated_at
にCURRENT_TIMESTAMP
を使用したので、バラツキのある日付にしたかった。
バラツキは100日前を制限とし更新したい。
sample.sql
UPDATE
users,
(
SELECT id, DATE_SUB(created_at, INTERVAL (ROUND(RAND() * 99 + 1)) DAY) as sub_users_created_at from users
) AS date_sub_users
SET
users.created_at = date_sub_users.sub_created_at
WHERE
users.id = date_sub_users.id;
備忘録です。