MySQL数据库如何从相关表中取出随机数据? |
本文标签:MySQL数据库 此文章主要向大家讲述的是MySQL数据库从相关表中取出随机数据的实际操作方案,为了实现随机,我们从手册中找到了以下这个语句,可以完成今天的任务,以下就是具体方案的描述,望大家借鉴 。
rand在手册里是这么说的:: RAND() RAND(N) 返回在范围0到1.0内的随机浮点值 。如果一个整数参数N被指定,它被用作种子值 。
你不能在一个ORDER BY子句用RAND()值使用列,因为ORDER BY将重复计算列多次 。然而在MySQL(和PHP搭配之最佳组合)3.23中,你可以做: SELECT * FROM table_name ORDER BY RAND(),这是有利于得到一个来自SELECT * FROM table1,table2 WHERE a=b AND c 注意在一个WHERE子句里的一个RAND()将在每次WHERE被执行时重新评估 。 但试了一下,8千条记录的表,执行一次需要0.08 sec,慢了些 。后来请教了google,得到如下代码: 执行效率需要0.02 sec.可惜的是,只有MySQL(和PHP搭配之最佳组合) 4.1.*以上才支持这样的子查询. 以上的相关内容就是对MySQL数据库从表中取出随机数据的介绍,望你能有所收获 。 |