我知道如果我运行这个查询
select top 100 * from mytable order by newid()
Run Code Online (Sandbox Code Playgroud)
它将从我的表中获得100条随机记录.
但是,我对它是如何工作有点困惑,因为我没有newid()在select列表中看到.谁能解释一下?newid()这里有什么特别的东西吗?
假设一个表结构:
Create Table Question
{
ID int pk,
Category varchar
Stem varchar,
AnswerA varchar,
...
AnswerD varchar,
Correct char,
isMandatory bit
}
Run Code Online (Sandbox Code Playgroud)
对于给定的类别,大约有50个问题.可以有1-10个强制性问题.
我需要随机选择所有必修问题,然后提出足够的其他问题来提出20个问题.