sql-server – 如何在保证Y某些特定行在结果中的同时选择X个随机行?

前端之家收集整理的这篇文章主要介绍了sql-server – 如何在保证Y某些特定行在结果中的同时选择X个随机行?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设一个表结构:
Create Table Question
{
ID int pk,Category varchar
Stem varchar,AnswerA varchar,...
AnswerD varchar,Correct char,isMandatory bit

}

对于给定的类别,大约有50个问题.可以有1-10个强制性问题.

我需要随机选择所有必修问题,然后提出足够的其他问题来提出20个问题.

解决方法

好的,这个怎么样
select top 20 * from question
where category = @category
order by isMandatory desc,newid()

请参阅newid()Random record from a database table (T-SQL)背后的推理答案

猜你在找的MsSQL相关文章