Возвращает случайное значение с плавающей запятой v в диапазоне 0 <= v < 1.0.
Таким образом, в вышеприведенном запросе наибольшее значение, которое может быть сгенерировано 1 + RAND()*3, будет 3.999999, которое, когда floored будет давать 3. Наименьшее значение будет иметь место, когда RAND() возвращает 0, и в этом случае это будет дать 1.
Ответ 2
Используйте функцию RAND(). Он возвращает случайное значение с плавающей запятой v в диапазоне 0 <= v < 1.0. Чтобы получить случайное целое число R в диапазоне i <= R < j, используйте выражение FLOOR(i + RAND() * (j − i)). Например, чтобы получить случайное целое число в диапазоне диапазона 1<= R < 3, используйте следующий оператор:
UPDATE tableName
SET ColumnName= FLOOR(1 + rand() * 3);
N.B:RAND() производит случайные значения с плавающей точкой от 0 до 1.
Ответ 3
Сделайте это
UPDATE tableName SET columnName = FLOOR(RAND( ) + RAND( ));