2011-09-27 5 views
0

내 필드 같은 임의의 최근 7 일 동안의 값을 보유하는 'createdOn'날짜 필드 업데이트MYSQL Subctract 일 초 인사말

모든 :

UPDATE posts 
    SET createdOn 
    = DATE_SUB(DATE(NOW()), INTERVAL ROUND(RAND()*7) DAY) 

를이 나에게 임의의 날짜를 주지만를 I 시간, 분, 초는 무작위가 아니며 00:00:00과 같습니다. 위의 경우에도 임의의 시간, 분 및 초를 어떻게 포함시킬 수 있습니까? 고유 한 지난 7 일 동안의 시간, 분 및 초가 더 좋을 것입니다.

당신에게

답변

1

하라구요 것은 여기가 지난 7 일 임의의 시간, 분 다음 초의 예입니다 -

UPDATE posts 
    SET createdOn = DATE(NOW()) - INTERVAL FLOOR(RAND() * 604800) SECOND; 

경우 604,800 = 60 초 * 60분 * 24 시간 * 칠일.

1

NOW()DATE으로 주조하면 시간 부분이 삭제되어 강제로 00:00:00이됩니다. 다른 RAND()TIME(NOW())에 작성하고 함께 추가하는 것이 좋습니다.

관련 문제