时间: 2020-09-25|tag:11次围观|0 条评论

mysql怎么要获取随机阅读,在php里面有rand()函数,那么在mysql里面有没呢?那么请看下文
在php里面的函数跟msql不一样 ,在php里面rand(1,10)但是在mysql里面就不是这样了

mysql如何随机抽取数据库里的几条数据呢?读取随机数只要使用RAND就可以了,方法非常的简单,下面我来给各位举个例子.

数据库连接这些就不贴代码了,直接粘贴sql语句,代码如下:

  1. SELECT `title` , `id` 
  2. FROM news 
  3. ORDER BY RAND( ) 
  4. LIMIT 0 , 5; 

随机从new表里取出5条数据,显示id和标题,代码如下:

  1. mysql> select username from cdb_members order by rand() limit 0,5; 
  2.  
  3. +-----------+ 
  4. | username  | 
  5. +-----------+ 
  6. | Takeshi   | 
  7. | icelong   | 
  8. | 狗狗请罪  | 
  9. | 菜头      | 
  10. | weike1130 | 
  11. +-----------+ 
  12. 5 rows in set (0.01 sec) 
  13. 1、 
  14. SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1;
  15. 2、 
  16. SELECT * FROM `table`  WHERE id >= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) FROM `table`)))   ORDER BY id LIMIT 1; 

最后在php中对这两个语句进行分别查询10次,后者花费时间 0.147433 秒,前者花费时间 0.015130 秒.

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《mysql怎么随机获取数据库里信息
   

还没有人抢沙发呢~