我目前在php中使用EZSQL類來查詢MySQL數據庫。我試圖從數據庫中抓取隨機記錄,但是我想知道是否可以通過php來隨機化結果,而不是使用sql查詢本身。查詢目前看起來是這樣的:使用php而不是mysql查詢隨機化數據庫結果
$results = $db->get_results("SELECT * FROM table ORDER BY RAND()");
foreach($results AS $result)
{
//code here
}
而是我能不能搶,結果從該數據庫,然後通過PHP隨機呢?如果是這樣,我該怎麼做?
['shuffle'(http://php.net/manual/en/function.shuffle.php) – 2013-02-09 23:15:39
爲什麼要這麼做?數據庫中的隨機化可能更快。 – 2013-02-09 23:21:37
如果將涉及'LIMIT',您將返回到SQL的'RAND()',這很好。如果你認爲'RAND()'是大數據庫的問題(不是真的),那麼你將不得不使用'LIMIT'來選擇數十億行。所以你有它:'ORDER BY RAND()'是你唯一的選擇。 – 2013-02-10 00:15:24