検索

ホームページ  >  に質問  >  本文

随机数 - PHP 随机读取数据问题!!!

我的库里面有500条 判断题 和 选择题 。
我想进入答题页面时,系统从数据库读取10条判断题和40条选择题(先把随机读出来的10个判断题放前面,然后接着随机读取40条选择题),要求题不重复。
这个怎么做?我直接写rand() 出现重复内容。

黄舟黄舟2865日前752

全員に返信(2)返信します

  • 迷茫

    迷茫2017-04-10 17:56:02

    shuffling

    返事
    0
  • ringa_lee

    ringa_lee2017-04-10 17:56:02

    有一个简单易理解但效率不高的方法。

    • 从库里面取所有判断题的序号到数组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可以不连续。

    返事
    0
  • キャンセル返事