PHP 随机读取数据问题!!!
我的库里面有500条 判断题 和 选择题 。
我想进入答题页面时,系统从数据库读取10条判断题和40条选择题(先把随机读出来的10个判断题放前面,然后接着随机读取40条选择题),要求题不重复。
这个怎么做?我直接写rand() 出现重复内容。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
shuffling
有一个简单易理解但效率不高的方法。
从库里面取所有判断题的序号到数组A,
select id from table where type = "judgments"
;之后从数组A中随机取N(N=10)个元素,
array_rand($array,10)
;再用这些元素查题,
select * from table where id in
。方法比较好理解,但是性能,不怎么地……你题库里要是只有500条倒还好。
目前我有个自己的项目,有类似的需求,就是这么做的。
当时网上也搜了不少方法,看到过很多高效率的方法,但是有个缺点就是id必须连续。我这个方法id可以不连续。