Ottenuto un grande tavolo e voglio aggiungere una colonna che ha un numero scelto a caso per ogni record. 1, 2 o 3.AGGIORNAMENTO MySQL con numero casuale compreso tra 1-3
In difficoltà. Qualche idea?
Ottenuto un grande tavolo e voglio aggiungere una colonna che ha un numero scelto a caso per ogni record. 1, 2 o 3.AGGIORNAMENTO MySQL con numero casuale compreso tra 1-3
In difficoltà. Qualche idea?
Prova questo:
UPDATE tableName SET columnName = FLOOR(1 + RAND() *3);
Dal MySQL documentation per RAND
:
Restituisce un casuale in virgola mobile valore v nell'intervallo 0 < = v < 1.0.
Così nella query precedente, il valore più grande che potrebbe essere generato da 1 + RAND()*3
sarebbe 3.999999
, che una volta pavimentato darebbe 3. Il valore più piccolo si sarebbe verificato quando RAND()
restituisce 0, nel qual caso questo darebbe 1.
fare questo utilizzare la funzione
UPDATE tableName SET columnName = FLOOR(RAND() + RAND());
RAND(). Restituisce un valore a virgola mobile casuale nell'intervallo 0 <= v < 1.0
. Per ottenere un numero intero casuale R nell'intervallo i <= R < j
, utilizzare l'espressione FLOOR(i + RAND() * (j − i))
. Per esempio, per ottenere un numero intero casuale nella gamma della gamma 1<= R < 3
, utilizzare la seguente dichiarazione:
UPDATE tableName
SET ColumnName= FLOOR(1 + rand() * 3);
NB:RAND() produce valori decimali casuali da 0 a 1.
[Che cosa hai provato? ] (http://www.whathaveyoutried.com/) Vedi [chiedi consiglio] (http://stackoverflow.com/questions/ask-advice), per favore. –
http://stackoverflow.com/questions/6550155/mysql-get-a-random-value-between-two-values – sgeddes
Non hai ancora provato 'UPDATE' e' RAND() '? – tadman