phpMyAdmin
 sql >> Database >  >> Database Tools >> phpMyAdmin

Come aggiornare/inserire date casuali in SQL all'interno di un intervallo di date specificato

Inizierei con qualcosa del genere. Un sacco di questi possono essere combinati, ma li divido in modo da poter vedere cosa sto facendo.

Per ottenere numeri casuali, puoi usare rand(). Ottieni uno per data, ora, minuti e secondi

$randomDate = rand(1,31);
$randomHour = rand(1,24);
$randomMinute = rand(0,59);
$randomSecond = rand(0,59);

Avrai bisogno di zeri iniziali (03 anziché 3) in modo da poter utilizzare str_pad per aggiungerli, se necessario

$randomDate = str_pad($randomDate, 2, '0',STR_PAD_LEFT);
//The '2' is how many characters you want total
//The '0' is what will be added to the left if the value is short a character

Fai lo stesso con tutti gli altri tuoi valori casuali.Solo perché mi piacciono le query pulite, dovresti creare le stringhe di aggiornamento finali in seguito.

$newDate = '2008-09-'.$randomDate;
$newTime = $randomHour.':'.$randomMinute.':'.$randomSecond;

Ora non so come stai determinando quali righe vuoi aggiornare, quindi lo lascerò a te. Ad esempio, ti mostrerò una query se volevi farlo con Primary_id 3:

$x = mysql_query("UPDATE yourTable SET Begin_Date=\"$newDate\", Timestamp=\"$newTime\" WHERE Primary_id = 3");