日期:2014-05-19  浏览次数:20455 次

从数据表中随机取1条数据
sqlserver中随机取

首先要知道这个表中的数据总数   那么随机取1条怎么取的?
RAND()函数怎用?

------解决方案--------------------
select top 1 * from tablename order by newid()
------解决方案--------------------
下面的示例使用 NEWID 对声明为 uniqueidentifier 数据类型的变量赋值。在测试该值前,将先打印 uniqueidentifier 数据类型变量的值。

-- Creating a local variable with DECLARE/SET syntax.
DECLARE @myid uniqueidentifier
SET @myid = NEWID()
PRINT 'Value of @myid is: '+ CONVERT(varchar(255), @myid)

下面是结果集:

Value of @myid is: 6F9619FF-8B86-D011-B42D-00C04FC964FF

应该使用
select top 1 * from table order by newid()