直接用select from student order by rand() limit 5不是一个很好的习惯,这个要考虑到数据库的大小问题,比如,数据量为10W以上,这样查询的效率是非常低的,资源也消耗挺多!你可以考虑在php与mysql结合来实现,比如:先用mysql 的count()计算出student的总条数$sum_num,赋值到php中的变量中,后在php中更具这个总条数进行生成随机数(这里涉及到你的5条数据是否为连续的5条随机数,还是打乱的随机五条),这里如果生成连续的数据就只需要生成一个小于$sum_num-5的随机数就可以了!根据这个随机数进行limit取出5条就可以;如果这里需要生成打乱的随机数,就需要生成5个不相同的并且小于$sum_num随机数,最后根据这些随机数在数据库中查询,第一种情况用到limit 随机数,5;;第二种情况用到in(随机数1,随机数2,随机数3,随机数4,随机数5);在数据量大的情况下,这样的效率和资源消耗的情况下都要比select from student order by rand() limit 5好得多,当然如果数据量不多的话就用这个也可以!只是给你普及个知识!祝你学习愉快!(这里暂且认为你会用php生成随机数并且这里的php生成的随机数必须为大于0的整型哦,不会的话可以先百度、google,最后可以继续给我留言)!
这里因为你的id会有缺失所以有的方法不适用!就不一一列举了!
先配置数据库------连接数据库--------选择数据库--------填写检索表-------输出检索内容
第一种解决方法:
一、配置一下数据库:
define("DB_HOST","localhost");//数据库地址,一般为localhost
define("DB_USER","root");//数据库用户名
define("DB_PSW","");//数据库密码
define("DB_DB","databasename");//需要 *** 作的数据库
二、连接数据库:
$conn = mysql_connect(DB_HOST,DB_USER,DB_PSW) or die
三、选择数据库:
mysql_select_db(DB_DB,$conn) or die
四、检索表:(填写tablename)
$result = mysql_query("select from tablename") or die
五、输出检索的内容:
while ($row = mysql_fetch_row($result)){foreach($row as $data){ echo $data' ';} echo '<br。
以上就是关于请问php+mysql中如何从数据表student中随机抽取若干条(例如是五条数据)数据全部的内容,包括:请问php+mysql中如何从数据表student中随机抽取若干条(例如是五条数据)数据、php+mysql如何读取数据库数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)