这么写:update coc_userscore set score=score+floor(60+rand()*(533-60+1));
mysql 里似乎没有rand(m,n)的用法。只有rand() 或者 rand(n),n是指种子值。
rand()返回0~1之间的浮点数。

解决方案 »

  1.   

    $score+=rand(60,533)
    "update coc_userscore set score=$score";数据库应该没有rand函数,用PHP来实现,可是PHP有没有我也不知道,哈哈,刚学PHP
      

  2.   

    不好意思,我上面写的有问题,哈哈
    "update coc_userscore set score=score+".rand(60,533); 
      

  3.   

    rand函数参数值写错,没有这样写的。
      

  4.   

    这是官方的解释:若要在i  ≤ R ≤  j 这个范围得到一个随机整数R  ,需要用到表达式 FLOOR(i + RAND() * (j  – i + 1))。例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机整数, 可使用以下语句:SELECT FLOOR(7 + (RAND() * 6));
      

  5.   

    那请问整个的SQL更新语句应该如如何写呢
      

  6.   

    你可以把60、533代入到我5楼讲的语法。60代入i,533代入j。这个是SQL语句
    update coc_userscore set score=score+FLOOR(60 + (RAND() * 533-60+1));
    你也可以:
    update coc_userscore set score=score+FLOOR(60 + (RAND() * 474));
      

  7.   

    FLOOR(60 + (RAND() * 533-60+1));请问哪里有这个FLOOR的说明,我在网上没找到。谢谢了