嵌套查询,随机
现在有三张表:题库表,试卷表,答题表
题库表记录有正确答案
试卷表记录每题在题库中的编号
答题表记录学生的答案
想要从答题表中随机选一张没有批改过的试卷,通过相同试卷号在试卷表中找到相应题号,再从题库中找到答案。自己写了个嵌套查询,查出了题库中的正确答案,但怎么查出原来答题表中学生的答案并比较呢;select count(*)不知道可不可以!但之前是随机的,是不是还要定义变量记录下来什么的,不太懂!
下面是查询出正确答案的:
SELECT OptAnswer
FROM OptTiku
WHERE OptTikuNum =
(SELECT Opt1
FROM Paper
WHERE PaperNum =
(SELECT TOP 1 PaperNum
FROM AnsPaper
WHERE IsNotCorrect=0 ORDER BY newid() ))
还缺AnsPaper表中Opt1列中的值与其作比较》》
sql?嵌套查询?随机
------解决方案--------------------还缺AnsPaper表中Opt1列中的值与其作比较》》
--------这样?
SELECT TOP 1 OptAnswer
FROM OptTiku AS a
WHERE EXISTS(SELECT 1 FROM Paper AS b WHERE b.Opt1=a.OptTikuNum AND EXISTS(SELECT 1 FROM AnsPaper WHERE PaperNum=b.PaperNum AND Opt1=a.OptAnswer))
ORDER BY NEWID()