查询年末、年初

declare @queryDate  datetime
set @queryDate=getdate()
--年初,计算给定日期所在年的第一天
select dateadd(year,datediff(year,0,@queryDate),0) as '所在年的第一天'
--年末,计算给定日期所在年的最后一天
select dateadd(year,datediff(year,-1,@queryDate),-1) as '所在年的最后一天'
--上一年年初,计算给定日期所在年的上一年的第一天
select dateadd(year,datediff(year,-0,@queryDate)-1,0) as '所在年的上一年的第一天'
--上一年年末,计算给定日期所在年的上一年的最后一天
select dateadd(year,datediff(year,0,@queryDate),-1) as '所在年的上一年的最后一天'
--下一年年初,计算给定日期所在年的下一年的第一天
select dateadd(year,1+datediff(year,0,@queryDate),0) as '所在年的下一年的第一天'
--下一年年末,计算给定日期所在年的下一年的最后一天
select dateadd(year,1+datediff(year,-1,@queryDate),-1) as '所在年的下一年的最后一天'
select dateadd(MONTH,datediff(MONTH,0,@queryDate),0) as '所在月的第一天'
select dateadd(MONTH,datediff(MONTH,-1,@queryDate),-1) as '所在月的最后一天'
go

posted @ 2013-05-21 10:46  namehwh  阅读(161)  评论(0编辑  收藏  举报