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'