方法一:
代码如下 | 复制代码 |
select * from tablename order by rand() limit 1 |
把 limit 后面的数值改为你想随机抽取的条数,这里只取一条。
方法二:
代码如下 | 复制代码 |
$query= "SELECT count(*) as count FROM recommends"; $query = "SELECT * FROM recommendsn limit ".$se_pos.",".$length; |
例3
假设有一个名为xyj的数据库,库中有表obj,表中有一字段为name,现在要实现从表里随机选取一条记录,具体程序如下:
代码如下 | 复制代码 |
$db = mysql_connect("localhost", "root"); mysql_select_db("xyj",$db); $result=mysql_query("SELECT * FROM obj",$db); $max_num=mysql_num_rows($result);//取得数据库的记录数 srand((double)microtime()*10000000); //生成随机数种子。 $se_pos=rand(0, $max_num-1); //从0到最大记录数取随机数 $length=30; //设定共取多少条记录 //下面是取出指定数目的记录。 $result_lim=mysql_query("select * from obj limit $se_pos,$length",$db); $myrow_lim=mysql_fetch_array($result_lim); printf("%sn", $se_pos);//显示随机得到的记录号 printf("%sn", $myrow_lim["name"]);//显示随机得到的记录的name字段 |