我有这张表QUESTIONS
,其中包含 500 条记录,其中包含以下列:
Q_ID
Q_difficulty('easy','medium','hard')
Q_subject('MATH','SCIENCE','LANGUAGE','HISTORY')
Question(the actual question)
我需要获得 100 条随机记录,包括 20 条简单、60 条中等和 20 条困难,但我必须考虑获得每个主题的 25%。
我知道如何通过以下方式变得容易、中等和困难:
go
select top 20 from QUESTIONS where Q_difficulty='easy' order by NEWID()
go
select top 60 from QUESTIONS where Q_difficulty='medium' order by NEWID()
go
select top 20 from QUESTIONS where Q_difficulty='hard' order by NEWID()
我的问题是如何使查询具有每个主题的 25%。顺便说一句,我正在使用 SQL 服务器 :(