当前位置:首页 > PHP教程 > php高级应用 > 列表

php随机取mysql记录方法示例

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-10 13:15:12 浏览: 评论:0 

在php中要随机取mysql记录我们可以直接使用mysql_query来执行mysql中的select rand函数获取的数据并读出来,下面我来给大家介绍一下具体实例.

方法一,代码如下:

select * from tablename order by rand() limit 1 

把 limit 后面的数值改为你想随机抽取的条数,这里只取一条.

方法二,代码如下:

  1. $query"SELECT count(*) as count FROM recommends"
  2. .... 
  3. $max_num = $row['count']; // 取记录总数 
  4. srand((double)microtime()*1000000); // 随机数种子 
  5. $se_pos = rand(0, $max_num); // 随机数范围 
  6. $length = 6; // 记录条数 
  7. if (($max_num - $se_pos) <= $length) { 
  8.     $se_pos = $max_num - $se_pos// 记录数不足6条的情况 
  9. }//开源代码phpfensi.com 
  10.  
  11. $query = "SELECT * FROM recommendsn limit ".$se_pos.",".$length

例3,假设有一个名为xyj的数据库,库中有表obj,表中有一字段为name,现在要实现从表里随机选取一条记录,具体程序如下:

  1. <?php 
  2.  
  3. $db = mysql_connect("localhost""root"); 
  4.  
  5. mysql_select_db("xyj",$db); 
  6.  
  7. $result=mysql_query("SELECT * FROM obj",$db); 
  8.  
  9. $max_num=mysql_num_rows($result);//取得数据库的记录数 
  10.  
  11. srand((double)microtime()*10000000); //生成随机数种子。 
  12.  
  13. $se_pos=rand(0, $max_num-1); //从0到最大记录数取随机数 
  14.  
  15. $length=30; //设定共取多少条记录 
  16.  
  17. //下面是取出指定数目的记录。 
  18.  
  19. $result_lim=mysql_query("select * from obj limit $se_pos,$length",$db); 
  20.  
  21. $myrow_lim=mysql_fetch_array($result_lim); 
  22.  
  23. printf("%sn"$se_pos);//显示随机得到的记录号 
  24.  
  25. printf("%sn"$myrow_lim["name"]);//显示随机得到的记录的name字段 
  26. ?>

Tags: php随机取 php随机mysql

分享到: