如何获得本日所在周的第一天日期与最后一天日期
2008-11-06 22:18
316 查看
以下是实现的多种方法,可根据您的自身需要进行使用
//所在周的第一天日期
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) - datepart(dw,getdate()) + 1,'1900-01-01')
//所在周的最后一天日期
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) + (7 - datepart(dw,getdate())),'1900-01-01')
--1、当天所在周的第一天(星期天)
SELECT DATEADD( day, 1 - DATEPART(weekday, convert(char(10),getdate(),12)),convert(char(10),getdate(),12) ) AS 'ThisSunday'
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) - datepart(dw,getdate()) + 1,'1900-01-01')
--2、当天所在周的最后一天(星期六)
SELECT DATEADD( day, 7 - DATEPART(weekday, convert(char(10),getdate(),12)),convert(char(10),getdate(),12) ) AS 'ThisSaturday'
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) + (7 - datepart(dw,getdate())),'1900-01-01')
--依次类推可以得到当天所在周任意一天的日期
select getdate()-(datepart(weekday,getdate())-1), getdate()+(7-datepart(weekday,getdate()))
select dateadd(dd,-(datepart(weekday,getdate())-2),getdate()),dateadd(dd,(7-datepart(weekday,getdate())+1),getdate())
以下是用VB/ASP使用的取当前日期所在周的起目日期
Function firstdateofthisweek(ByVal d As Object) As Object
firstdateofthisweek = d - weekday(d) + 1
End Function
Function lastdateofthisweek(ByVal d As Object) As Object
lastdateofthisweek = d - weekday(d) + 7
End Function
所在月第一天和最后一天的计算方法:
select convert(datetime,convert(char(8),getdate(),120)+'1')
select dateadd(day,-1,convert(char(8),dateadd(month,1,getdate()),120)+'1')
//所在周的第一天日期
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) - datepart(dw,getdate()) + 1,'1900-01-01')
//所在周的最后一天日期
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) + (7 - datepart(dw,getdate())),'1900-01-01')
--1、当天所在周的第一天(星期天)
SELECT DATEADD( day, 1 - DATEPART(weekday, convert(char(10),getdate(),12)),convert(char(10),getdate(),12) ) AS 'ThisSunday'
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) - datepart(dw,getdate()) + 1,'1900-01-01')
--2、当天所在周的最后一天(星期六)
SELECT DATEADD( day, 7 - DATEPART(weekday, convert(char(10),getdate(),12)),convert(char(10),getdate(),12) ) AS 'ThisSaturday'
select dateadd(dd,datediff(dd,'1900-01-01',getdate()) + (7 - datepart(dw,getdate())),'1900-01-01')
--依次类推可以得到当天所在周任意一天的日期
select getdate()-(datepart(weekday,getdate())-1), getdate()+(7-datepart(weekday,getdate()))
select dateadd(dd,-(datepart(weekday,getdate())-2),getdate()),dateadd(dd,(7-datepart(weekday,getdate())+1),getdate())
以下是用VB/ASP使用的取当前日期所在周的起目日期
Function firstdateofthisweek(ByVal d As Object) As Object
firstdateofthisweek = d - weekday(d) + 1
End Function
Function lastdateofthisweek(ByVal d As Object) As Object
lastdateofthisweek = d - weekday(d) + 7
End Function
所在月第一天和最后一天的计算方法:
select convert(datetime,convert(char(8),getdate(),120)+'1')
select dateadd(day,-1,convert(char(8),dateadd(month,1,getdate()),120)+'1')
相关文章推荐
- 如何获得Oracle当前日期的年或月的第一天和最后一天
- PHP获得指定日期所在星期的第一天和最后一天
- 如何获得Oracle当前日期的年或月的第一天和最后一天
- 如何获取年月日,时分秒?如何获得从1970年到现在的毫秒数?如何获得某个日期所在月份最后一天的日期?如何格式化日期?
- PHP获得指定日期所在月的第一天和最后一天
- java-日期操作-获得某月的第一天和最后一天
- 如何得到某周,月的第一天和最后一天的日期
- 获得当前周的第一天日期和最后一天的日期
- sql 语句(日期所在月的第一天,最后一天)
- 获得Oracle当前日期的年或月的第一天和最后一天
- java中如何正确获得一个月的第一天和最后一天
- 编写方法,输出给定日期所在月份的第一天和最后一天
- 获得当前周的第一天日期和最后一天的日期
- 如何用C#和SQL获得当前月的第一天和最后一天
- MSSQL 获取指定日期所在星期的第一天和最后一天日期 获取指定日期坐在月的第一天和最后一天
- 如何用C#和SQL获得当前月的第一天和最后一天
- java Calendar Date 获取传入日期所在月或年的第一天和最后一天
- 第一篇博客:获取当前日期所在季度的第一个月的第一天和最后一个月的最后一天
- SQL如何获得本季度第一天、一年的第一天、本月的最后一天
- SAP 中如何取得当月的第一天和最后一天的日期值?