首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

怎么从mssql随机取出一条记录,看似很简单的有关问题

2012-09-19 
如何从mssql随机取出一条记录,看似很简单的问题不要用newid() 这种方式,扫描全表,我的表大,很慢。用这种方

如何从mssql随机取出一条记录,看似很简单的问题
不要用newid() 这种方式,扫描全表,我的表大,很慢。

用这种方式:
SELECT TOP 10 *
FROM TB1
WHERE (id > CAST(FLOOR(RAND() *
  (SELECT COUNT(id)
  FROM [TB1])) AS int))

效果不行,如果两次查询间隔很近,查询的结果十之八九是相同的,

还有什么好办法吗?要兼顾执行效率。



[解决办法]
newid(),rand()都可以,根据实际情况选择

热点排行