PHP 和 MYSQL 获取表中的随机行

标签 php mysql random

你好,我有以下代码,它返回表中的行数,并选择一个介于 1 和行数之间的随机数。我希望能够获取 MySQL 表中与随机数对应的行。所以如果数字是二,我想把第二行写下来。 到目前为止,这是我的代码:

$query = mysql_query("SELECT count(*) as total from videos");
$result = mysql_fetch_array($query);
$TotalCount =  $result['total'];

$RandRow = mt_rand(1,$TotalCount);

我确实有一个 id 列,但所有的 id 都不是按顺序排列的,例如:4、27、43、2、18、109,所以我不能使用它。如何在表格中获取与我的随机数对应的行?

最佳答案

您想要表格中的随机一行,对吗?然后你可以在你的查询中使用 ORDER BY RAND() 和 LIMIT 1。它排序 - 令人惊讶 - 随机并且只返回一个数据集。

例如

$query = mysql_query("SELECT * FROM videos ORDER BY RAND() LIMIT 1");

所以你只需要做一个查询。

关于PHP 和 MYSQL 获取表中的随机行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40564384/

相关文章:

php - 关联数组

php - 仅当 MySQL 值匹配时才回显文本

python - 根据值随机选择字典键

Linux递归地用随机或伪随机数据填充所有文件

php - CakePHP:在使用 HtmlHelper 时将 CSS 添加到 CSS block 而不是使用内联输出的优势?

javascript - 如何在javascript中读取php对象关系(自定义属性)

php - 获取单击的按钮表行值以更新数据库

C++11 交叉编译器/标准库随机分布再现性

php - 使用电子邮件链接中的代码验证用户帐户

MYSQL 我可以找到特定类别中值(value)最高的产品吗