我有一张桌子:Questionmaster。它存储 DisciplineId、QuestionId、QuestionText 等...
现在我的问题是:
我需要特定 DisciplineId 的 10 条记录,另一个 DisciplineId 的 20 条记录和 Someother DisciplineId 的 30 条记录……我该怎么办?我怎样才能获得所有声明并只选择 60(10+20+30) 行?
对于一个学科,它的工作方式如下所示:
create or replace function fun_trial(Discipline1,Disc1_NoOfQuestions)
open cur_out for
select getguid() tmp,
QuestionNo,QuestionText,
Option1,Option2,
Option3,Option4,
Correctanswer,Disciplineid
from Questionmaster
where DisciplineId=discipline1
AND rownum <= disc1_NoOfQuestions
order by tmp ;
return (cur_out);