您的位置:首页 > 数据库

sql中获取周、月、季度、年的第一天与最后一天

2013-03-12 12:01 330 查看
DECLARE @dt varchar(10)
SET @dt='2013-03-10'
--获取周一
SELECT DATEADD(wk, DATEDIFF(dd,0,@dt)/7, 0)
--获取周日
SELECT DATEADD(wk, DATEDIFF(dd,0,@dt)/7, 6)

--季度的第一天
SELECT CONVERT(datetime,
CONVERT(char(8),
DATEADD(Month,
DATEPART(Quarter,@dt)*3-Month(@dt)-2,
@dt),
120)+'1')
--季度的最后一天
SELECT DATEADD(Day,-1,
CONVERT(char(8),
DATEADD(Month,
1+DATEPART(Quarter,@dt)*3-Month(@dt),
@dt),
120)+'1')

--月的第一天
SELECT CONVERT(datetime,CONVERT(char(8),@dt,120)+'1')
--月的最后一天
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1,@dt),120)+'1')

--年的第一天
SELECT CONVERT(char(5),@dt,120)+'01-01'
--年的最后一天
SELECT CONVERT(char(5),@dt,120)+'12-31'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐