看不少人喜歡用ORDER BY RAND()隨機調用,隨機調用是最耗資源的一種調用方式,信息數在1萬以上隨機調用就開始影響速度。使用時建議慎之又慎。
如果確實要使用,可以用下面思路:
先用php隨機出信息ID,然后SQL調用用id in (php隨機的ID列表)
調用舉例:
<?php
$randnum=10; //隨機數量
$randids='';
$randdh='';
for($i=1;$i<=$randnum;$i++)
{
$randids.=$randdh.rand(1,100000); //1為最小ID,100000為最大ID
$randdh=',';
}
?>
[e:loop={欄目ID,顯示條數,操作類型,只顯示有標題圖片,"id in ($randids)"}]
模板代碼內容
[/e:loop]