日期:2014-05-19  浏览次数:20399 次

在线考试系统试题的抽取
要实现的功能:一共分三种题目(单选,多选,判断),考生可以自由的选择先做哪个类型的题目,但是所做的题目的答案,要仍然在。还有就是怎么抽取试题的方式比较好一点。。。

------解决方案--------------------
抽题实现方式:
定义策略:指定抽题范围-指定抽题难度-数量
生成的时候
选出策略下收有的题 ORDER BY NEWID() 乱序后 抽出 TOP 5 (假设是抽 5 道题)
大致这个思路
我也在做考试系统
------解决方案--------------------
ORDER BY NEWID() 在 SQL Server 里,生成随机的 GUID,然后根据其排序
这样出来自然就是随机的,然后取出最上的几条,自然每次取出来都不一样
思路是怎样,实现细节比较复杂,一起讨论
------解决方案--------------------
随机抽取可以,就像vengair(韦恩)说的一样 select top 10 from table order by newid()
但是这样抽取题目不是很合理,随机性太大。
应该在指定的范围内(内容,题型,难度等)用基于统计的方法来抽取

------解决方案--------------------
public Guid getnewid()
{
Guid myguid=Guid.NewGuid();
return myguid;
}
20位 string 类型的数据 database中用varchar and so on