此文章主要向大家描述的是SQL Server 得到指定日期时间段内的随机,我们首先是从SQL Server 得到指定日期时间段内的随机的Sql代码开始对其进行讲述的,以下就是文章的主要内容的详细解析。
创新互联公司是一家专业提供凤泉企业网站建设,专注与成都网站建设、网站建设、H5场景定制、小程序制作等业务。10年已为凤泉众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。
Sql代码
用视图辅助SQL Server 得到随机数
用视图辅助得到随机数Sql代码
- alter VIEW v_RAND
- AS
- SELECT re=RAND()
- GO
SQL Server 得到指定时间段的随机时间
- alter function fn_getdate
- (
- @begin_date datetime,
- @end_date datetime
- )
- returns varchar(100)
- as
- begin
- declare @second varchar(50)
- if @begin_date is null
- SET @begin_date='2009-09-17 08:01:01';
- if @end_date is null
- SET @end_date='2009-10-14 17:30:00';
- SET @second = DATEDIFF ( second , @begin_date,@end_date)
- declare @d1 datetime
- declare @rand float
- select @rand=re from v_RAND
- set @d1 = dateadd(second,@rand*@second,@begin_date)
- if datepart(hour,@d1) >18
- begin
- set @d1=dateadd(hour,-8,@d1)
- end
- if datepart(hour,@d1) <8
- begin
- set @d1=dateadd(hour,8,@d1)
- end
- return @d1
- end
- go
- alter VIEW v_RAND
- AS
- SELECT re=RAND()
- GO
SQL Server 得到指定时间段的随机时间
- alter function fn_getdate
- (
- @begin_date datetime,
- @end_date datetime
- )
- returns varchar(100)
- as
- begin
- declare @second varchar(50)
- if @begin_date is null
- SET @begin_date='2009-09-17 08:01:01';
- if @end_date is null
- SET @end_date='2009-10-14 17:30:00';
- SET @second = DATEDIFF ( second , @begin_date,@end_date)
- declare @d1 datetime
- declare @rand float
- select @rand=re from v_RAND
- set @d1 = dateadd(second,@rand*@second,@begin_date)
- if datepart(hour,@d1) >18
- begin
- set @d1=dateadd(hour,-8,@d1)
- end
- if datepart(hour,@d1) <8
- begin
- set @d1=dateadd(hour,8,@d1)
- end
- return @d1
- end
go 测试
Sql代码
- select dbo.fn_getdate(null,null)
- select dbo.fn_getdate(null,null)
结果
- 10 12 2009 9:23AM
(所影响的行数为 1 行)
以上的相关内容就是对SQL Server 得到指定日期时间段内的随机的介绍,望你能有所收获。
【编辑推荐】
新闻名称:SQLServer得到指定日期时间段内的随机的Sql代码
网站网址:http://www.shufengxianlan.com/qtweb/news24/262474.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联