在Mysql表中取随机记录

RAND()是Mysql中的取随机数函数,该函数返回一个float型数值v,v的值为0<v<1.0。
例如:

1
2
3
4
5
6
7
8
9
10
11
12
mysql> SELECT RAND();
        -> 0.9233482386203
mysql> SELECT RAND(20);
        -> 0.15888261251047
mysql> SELECT RAND(20);
        -> 0.15888261251047
mysql> SELECT RAND();
        -> 0.63553050033332
mysql> SELECT RAND();
        -> 0.70100469486881
mysql> SELECT RAND(20);
        -> 0.15888261251047

我们可以使用ORDER BY RAND()取得随机排列的一组数据,例如:

1
mysql> SELECT * FROM tbl_name ORDER BY RAND();

将ORDER BY RAND()与LIMIT搭配使用,还可以取得固定条数的随机记录,例如:

1
mysql> SELECT * FROM `wzy_questions`  ORDER BY RAND() LIMIT 1;

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>