복붙노트

[SQL] MySQL은 삽입 / 업데이트 임의 날짜

SQL

MySQL은 삽입 / 업데이트 임의 날짜

어떻게 MySQL을 사용 지난 2 주 임의의 날짜 열을 업데이트?

(코드는 실제로 작동하지 않습니다) 예를 들면 :

UPDATE mytable
SET col = sysdate() - rand(1, 14);

해결법

  1. ==============================

    1.이 식으로 임의의 정수를 얻을 수 있습니다 :

    이 식으로 임의의 정수를 얻을 수 있습니다 :

    http://dev.mysql.com/doc/refman/5.1/en/mathematical-functions.html

    일, 시간 (해상도에 따라 다름) 분의 임의의 숫자를 생성하고 현재 날짜에 해당 번호를 추가하는 것을 사용합니다. 전체 표현은 다음과 같이 될 것이다 :

    SELECT NOW() - INTERVAL FLOOR(RAND() * 14) DAY;
    
  2. ==============================

    2.

    UPDATE mytable
    SET col = CURRENT_TIMESTAMP - INTERVAL FLOOR(RAND() * 14) DAY
    

    십삼일 -이 세트 (등) 현재 날짜와 현재 날짜 사이의 날짜에 내지 컬럼. 십사일 - 15 곱하기 현재 날짜를 얻을 수 있습니다.

  3. ==============================

    3.당신의 가장 큰 문제는 사용자가 지정한처럼 RAND ()는 값의 범위를 허용하지 않는다는 것입니다. 항상 0과 1 사이의 값을 반환합니다.

    당신의 가장 큰 문제는 사용자가 지정한처럼 RAND ()는 값의 범위를 허용하지 않는다는 것입니다. 항상 0과 1 사이의 값을 반환합니다.

    내가 지금 1..14 임의 솔루션을 작동하지 않을 수 있습니다,하지만 당신은 시작하는이 지난 10 일 이내에 임의의 날짜를 선택합니다 :

    SET col = DATE(DATE_SUB(NOW(), INTERVAL ROUND(RAND(1)*10) DAY)) 
    
  4. from https://stackoverflow.com/questions/4546111/insert-update-random-date-in-mysql by cc-by-sa and MIT license