sql 如何产生随机的日期
如:datetime型  从2005-1-1 到 2007-12-31
谢谢

解决方案 »

  1.   

    select dateadd(dd,1094*RAND(),'2005-01-01')
      

  2.   

    declare @start datetime,@end datetime
    select @start='2005-1-1'
    select @end='2007-12-31'
    declare @tmp table(date varchar(10))
    while convert(varchar(10),@start,120)!>convert(varchar(10),@end,120)
    begin
    insert @tmp select convert(varchar(10),@start,120)
    set @start=@start+1
    end
    select top 1 date from @tmp order by newid()--随机取
      

  3.   

    select dateadd(dd,1094*RAND(),'2005-01-01')上面的1094即為
    select datediff(dd,'2005-01-01','2007-12-31')