?
以SQL Server 2000自带的Northwind数据库为例:
SELECT TOP 3 *
FROM Employees
ORDER BY NEWID()
多执行几次,看到输出的结果了吗?
如果想要每次调用的数据不重复,这好办
每次调用过某个数据以后给它做一个标记
例如:给Employee表增加一个标志字段Flag(tinyint型),令它默认值为1
并且,update Employees set Flag=1
这样,调用前,所有的Flag都等于1
每次调用后
update Employees set flag=0 where employeeid=...
调用的代码改成
SELECT TOP 3 *
FROM Employees
Where Flag=1
ORDER BY NEWID()