现在的位置: 首页 > 综合 > 正文

SQL产生随机数(三个方法)

2013年04月12日 ⁄ 综合 ⁄ 共 1370字 ⁄ 字号 评论关闭
----------------------------------------------------------------------
declare   @maxNumber   int,   --随机数最大值
   @minNumber   int,   --随机数最小值
                  @rows   int               --要取得的行数  
select   @maxNumber=10000, @minNumber=10000,
                @rows=10  
   
set   rowcount   @rows  
   
select   distinct   '1234 4567 '+convert(varchar,ID)+' '+convert(varchar,ID)+' '+convert(varchar,ID)+' '+convert(varchar,ID)   as   'B'  
from   (   
                select   convert(int,rand(checksum(newid()))*@minNumber)   as   ID  
                from   syscolumns,sysobjects  
            )t  
   
set   rowcount   0
-----------------------------------------------------------------------
declare     @num1     int ,@num2     int ,@num3     int ,@num4     int  
set @num1=rand(abs(convert(int,checksum(newid()))))*10000
set @num2=rand(abs(convert(int,checksum(newid()))))*10000
set @num3=rand(abs(convert(int,checksum(newid()))))*10000
set @num4=rand(abs(convert(int,checksum(newid()))))*10000  
select   convert(varchar(100),@num1)+' '+convert(varchar(100),@num2)+' '+convert(varchar(100),@num3)+' '+convert(varchar(100),@num4)
---------------------------------------------------------------------------
declare @r1 numeric (15,0),@r2 numeric (15,0)
SELECT @r1=RAND( (DATEPART(mm, GETDATE()) * 100000 )
           + (DATEPART(ss, GETDATE()) * 1000 )
           + DATEPART(ms, GETDATE()) )*10000
print @r1
---------------------------------------------------------

抱歉!评论已关闭.