为了账号安全,请及时绑定邮箱和手机立即绑定

一道关于sql语句的问题 求真相...

一道关于sql语句的问题 求真相...

小怪兽爱吃肉 2018-08-21 05:06:14
这个一个简单的考试系统 先上sql语句:select * FROM  (select * from singleproblem  where type='1' and testid='1' order by dbms_random.value  ) where rownum <= 5 union all select * FROM (select * from singleproblem  where type='2'  and testid='1'  order by dbms_random.value  ) where rownum <= 1 union all select * FROM (select * from singleproblem  where type='3'  and testid='1'  order by dbms_random.value  ) where rownum <= 1我做出来随机了,但是因为是用的这个 union all 连接的,所以题目老是先出来单选题,然后复选题,最后才判断题这3大题里面的题目倒是随机抽的。就是这个顺序好像被union all给套住了。谁在前面他就先随机哪一类题目关于sql语句字段意思就不用我解释了吧 基本明眼人一看就懂 麻烦大家给个解决方案
查看完整描述

1 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

对Oracle不熟悉,不过看的出你似乎是对每个表随机打乱后再联合,但是为什么不把Union All三个表的查询结果之后再作随机排序呢?

查看完整回答
反对 回复 2018-08-22
  • 1 回答
  • 0 关注
  • 318 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信