2021-02-02 16:50:48
SQL Server:
代码如下 复制代码
Select TOP N * From TABLE Order By NewID()
NewID()函数将创建一个 uniqueidentifier 类型的唯一值。上面的语句实现效果是从Table中随机读取N条记录。
Access:
代码如下:
Select TOP N * From TABLE Order By Rnd(ID)
Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName)
Select TOP N * From TABLE Order BY Rnd(Len(UserName))
值得补充的是,上述access方法只能随机获取固定的数据,重新载入程序后,获取的数据居然没有变化,还是那几条记录。
解决办法是:请看这篇文章>>
MySql:
代码如下 复制代码
Select * From TABLE Order By Rand() Limit 10
postgreSQL:
代码如下 复制代码
select * from glxt022 order by random() limit 5
总结:上面的几种方法我都是在order by 后面来实例的,只mssql使用的top这也是它的语数据库服务器的限制。
from:http://www.111cn.net/database/mssqlserver/42764.htm