-3

我正在尝试编写一个 php / mysql 脚本,该脚本将从数据库中提取 5 条随机记录并显示它们。目前,我正在使用以下方法将一条记录拉出并显示在一个模块中,但我不确定如何一次仅拉出 5 条。我将在数据库中总共有大约 200-300 条记录。

我目前正在使用以下代码随机拉出单个记录:

<?php
$result = mysql_query("SELECT * FROM `zgjzb_chronoforms_data_submitbusiness` ORDER BY     RAND() LIMIT 0,4;");
$row = mysql_fetch_array($result);
?>
4

1 回答 1

9

你不想使用ORDER BY RAND(). MySQL 必须建立一个临时表。如果你的表有一个唯一的 id 列,这样的事情会更好:

SELECT * FROM `zgjzb_chronoforms_data_submitbusiness` 
WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM `table` )
ORDER BY id LIMIT 1;

有关在 php 中运行良好的其他方法,请参阅此博客文章

于 2012-11-12T21:22:33.213 回答