<分区>
使用 MySQL 或 PHP 命令返回随机行哪个更好?
例如,我有一个包含 10 列和 1000000 行的 product
表,我想从中随机返回 10 行。
方法 1(让 MySQL 完成大部分工作):
$query = mysql_query("SELECT * FROM product WHERE product_id in (SELECT product_id FROM product ORDER BY RAND() LIMIT 10)"); while($results[] = mysql_fetch_row($query));
方法 2(让 PHP 完成大部分工作):
$query = mysql_query("SELECT * FROM product"); while($results[] = mysql_fetch_row($query)); shuffle($results); $results = array_slice($results, 0, 10);
方法一好还是方法二好?