关于时间(续)

tim_spac 2008-04-15 09:35:30
set nocount on
declare @dt datetime
set @dt = getdate()

declare @dt1 datetime, @dt2 datetime
set @dt1 = dateadd(hour,datediff(hour,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(hour,datediff(hour,0,@dt)+1,0) )
print '当时: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)

set @dt1 = dateadd(day,datediff(day,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(day,datediff(day,0,@dt)+1,0) )
print '当日: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)

set @dt1 = dateadd(week,datediff(week,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(week,datediff(week,0,@dt)+1,0) )
print '当周: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)

set @dt1 = dateadd(month,datediff(month,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(month,datediff(month,0,@dt)+1,0) )
print '当月: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)

set @dt1 = dateadd(quarter,datediff(quarter,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(quarter,datediff(quarter,0,@dt)+1,0) )
print '当季: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)

set @dt1 = dateadd(year,datediff(year,0,@dt),0)
set @dt2 = dateadd(ms,-3, dateadd(year,datediff(year,0,@dt)+1,0) )
print '当年: ' + convert(varchar,@dt1,121) + ' ~ ' + convert(varchar,@dt2,121)
go
-- 当时: 2008-04-14 16:00:00.000 ~ 2008-04-14 16:59:59.997
-- 当日: 2008-04-14 00:00:00.000 ~ 2008-04-14 23:59:59.997
-- 当周: 2008-04-14 00:00:00.000 ~ 2008-04-20 23:59:59.997
-- 当月: 2008-04-01 00:00:00.000 ~ 2008-04-30 23:59:59.997
-- 当季: 2008-04-01 00:00:00.000 ~ 2008-06-30 23:59:59.997
-- 当年: 2008-01-01 00:00:00.000 ~ 2008-12-31 23:59:59.997
...全文
143 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxuelid 2008-04-15
  • 打赏
  • 举报
回复
post
rockyvan 2008-04-15
  • 打赏
  • 举报
回复
這個收藏。
hjj841020 2008-04-15
  • 打赏
  • 举报
回复
不错!!!!!
zccmy22 2008-04-15
  • 打赏
  • 举报
回复
嗯。挺不错的。楼主,可以再多整理点类似的真的不错。
jimogaoshou 2008-04-15
  • 打赏
  • 举报
回复
不错!!!!!收藏
-狙击手- 2008-04-15
  • 打赏
  • 举报
回复
select dateadd(wk,datediff(wk,0,getdate()),0) -1
-狙击手- 2008-04-15
  • 打赏
  • 举报
回复
select dateadd(wk,datediff(wk,0,getdate()),0)
kelph 2008-04-15
  • 打赏
  • 举报
回复
路过
-狙击手- 2008-04-15
  • 打赏
  • 举报
回复
go past
sweetweiwei 2008-04-15
  • 打赏
  • 举报
回复
学习
girl5201314 2008-04-15
  • 打赏
  • 举报
回复
datediff
dateadd
shi0526 2008-04-15
  • 打赏
  • 举报
回复
学习

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧