你好,我有以下代码,它返回表中的行数,并选择一个介于 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/