我正在尝试使用3.8到5.0之间的随机数更新MySql中的ratingValue列。
Mysql中的列类型设置为Decimal(2,1),我尝试的代码(有很多更改,但没有成功)是:
$min = 3.8;
$max = 5.0;
$query = "UPDATE users SET ratingValue=FLOOR($min+(RAND()*($max-$min+0.1)));";
$result = $baza->query($query);
但它从不更新小数后的任何值,只是舍入到完整值(即4.0或5.0)。
我将不胜感激。
答案 0 :(得分:0)
MySQL中的RAND函数将创建所需的值:
http://dev.mysql.com/doc/refman/5.0/en/mathematical-functions.html#function_rand
答案 1 :(得分:0)
这会给你一个3.8到5.0之间的随机数到一个位置。
ROUND(FLOOR(13 * RAND())/ 10,1)+ 3.8
首先得到0到12之间的随机数,然后除以10然后将其加到3.8。