我正在尝试使用 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)。
如果有任何帮助,我将不胜感激。
最佳答案
这应该会给你一个 3.8 到 5.0 之间的随机数到一个位置。
圆形(FLOOR(13 * RAND())/10, 1) + 3.8
它首先获取 0 到 12 之间的随机数,然后除以 10,然后加上 3.8。
关于mysql - 使用给定 2 之间的随机值(带小数)更新 mySQL 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24456993/