一、取指定范围的数字
create view myview
as
select re=rand()
create function mydata
(
@a int,
@b int
)
returns decimal(38,0)
as
begin
declare @r decimal(38,0)
select @r=cast(re*(@b-@a)+@a as decimal(38,0)) from myview
return(@r)
end
go
--调用(可以随意指定你要的数据范围)
select user_no,dbo.mydata(1000,9999) number from table1
--可以在你原来的查询基础上增加一列number,如不增加列,
--那就把上面的结果放入一个临时表 #a,然后update
--如:
update table1 set number1=a.number from #a a,table1 b where a.user_no=b.user_no
二、产生日期区间随机日期==
select cast(dbo.mydata(1993,1985) as nvarchar(4))+'-'+cast(dbo.mydata(12,1) as nvarchar(2))+'-'+cast(dbo.mydata(30,1) as nvarchar(2))
select dateadd(dd,datediff(dd,'2010-05-01','2012-06-30')*RAND(),'2010-05-01')
--2010-05-01 换为起始日期
--2012-06-30 换为结束日期
三、查询指定日期
--这个月第一天是哪一天
Select DATEADD(mm,DATEDIFF(mm,getdate()),0)
--本周星期一是哪一天
Select DATEADD(wk,DATEDIFF(wk,0)
--一年中的第一天
Select DATEADD(yy,DATEDIFF(yy,0)
--季度中的第一天
Select DATEADD(qq,DATEDIFF(qq,0)
--当天的半夜
Select DATEADD(dd,DATEDIFF(dd,0)
--取上个星期天
select DATEADD(WEEK,DATEDIFF(WEEK,-8)
--上个月的最后一天
select dateadd(dd,-1,DATEADD(mm,0))
--这个月最后一天
Select DATEADD(dd,-day(getdate()),1,DATEADD(DD,0)))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。