SELECT * FROM table_name ORDER BY rand() LIMIT 5;
¡¡¡¡randÔÚÊÖ²áÀïÊÇÕâô˵µÄ:
¡¡¡¡RAND() £¬RAND(N) £º·µ»ØÔÚ·¶Î§0µ½1.0ÄÚµÄËæ»ú¸¡µãÖµ¡£Èç¹ûÒ»¸öÕûÊý²ÎÊýN±»Ö¸¶¨£¬Ëü±»ÓÃ×÷ÖÖ×ÓÖµ¡£
¡¡¡¡mysql> select RAND();
¡¡¡¡-> 0.5925
¡¡¡¡mysql> select RAND(20);
¡¡¡¡-> 0.1811
¡¡¡¡mysql> select RAND(20);
¡¡¡¡-> 0.1811
¡¡¡¡mysql> select RAND();
¡¡¡¡-> 0.2079
¡¡¡¡mysql> select RAND();
¡¡¡¡-> 0.7888
¡¡¡¡Äã²»ÄÜÔÚÒ»¸öORDER BY×Ó¾äÓÃRAND()ֵʹÓÃÁУ¬ÒòΪORDER BY½«Öظ´¼ÆËãÁжà´Î¡£È»¶øÔÚMySQL3.23ÖУ¬Äã¿ÉÒÔ×ö£º SELECT * FROM table_name ORDER BY RAND()£¬ÕâÊÇÓÐÀûÓڵõ½Ò»¸öÀ´×ÔSELECT * FROM table1,table2 WHERE a=b AND c
¡¡¡¡µ«ÎÒÊÔÁËÒ»ÏÂ,8ǧÌõ¼Ç¼µÄ±í,Ö´ÐÐÒ»´ÎÐèÒª0.08 sec,.ÂýÁËЩ
¡¡¡¡
¡¡¡¡ºóÀ´Çë½ÌÁËgoogle,µÃµ½ÈçÏ´úÂë
¡¡¡¡SELECT *
¡¡¡¡FROM table_name AS r1 JOIN
¡¡¡¡(SELECT ROUND(RAND() *
¡¡¡¡(SELECT MAX(id)
¡¡¡¡FROM table_name)) AS id)
¡¡¡¡AS r2
¡¡¡¡WHERE r1.id >= r2.id
¡¡¡¡ORDER BY r1.id ASC
¡¡¡¡LIMIT 5;
Ö´ÐÐЧÂÊÐèÒª0.02 sec.¿ÉϧµÄÊÇ,Ö»ÓÐmysql 4.1.*ÒÔÉϲÅÖ§³ÖÕâÑùµÄ×Ó²éѯ.