无法吐出mysqli随机数

时间:2016-04-11 13:30:17

标签: php mysql

我需要随机从MySQL数据库中填充2x用户名。

我说我的数据库中有clintonsanderstrump用户(抱歉无法帮助自己)。

我希望只有两个用户随机输入变量。我读了太多脚本,让自己非常困惑。

  $result = mysqli_query($mdb, "SELECT user FROM `table`");
  $row = mysqli_fetch_row(array_rand($result,2));
  echo $row[0] . "\n";
  echo $row[1] . "\n";
实际上,由于我的泰迪熊很寂寞,所以我真的要去打瞌睡了。所以明天早上我会回答并回复答案。感谢。

1 个答案:

答案 0 :(得分:2)

我认为你应该再单独留下你的泰迪熊并直接使用这个查询

 $result = mysqli_query($mdb, "SELECT user FROM `table` ORDER BY RAND() LIMIT 0, 2");

这会自动从数据库中随机输入两个条目,您将不再需要使用array_rand()

关于对大基数的影响的评论中的问题,在研究中它会产生很大的影响。我发现对此http://www.petefreitag.com/item/466.cfm的评论提供了更好的选择

  

如果您有一个包含许多行的表,则可以进行多次查询   快点。一个简单的SELECT * FROM表ORDER BY RAND()必须进行排序   在记忆中 - 昂贵。如果您将查询更改为SELECT * FROM表   WHERE RAND()> 0.9 ORDER BY RAND()然后你减少了开销   按90%排序。这将有许多兰德()的开销   语句,但在DB2大型机上,它是一种更快的技术。