问题: http://community.csdn.net/Expert/topic/5610/5610428.xml?temp=.6264459
declare @s varchar(20)
declare @t datetime
set @s='2007-6'
set @t=convert(datetime,@s+'-1')
select DATEADD(wk, DATEDIFF(wk,0, dateadd(dd,6-datepart(day,@t),@t) ), 7)
--结果:2007-6-11
可以使用两个函数来判断:
select getdate(),datename(weekday,getdate()),datepart(weekday,getdate())
datename 返回星期名称;
datepart 返回数值;
例子:
select
case datepart(dw,getdate())
when 1 then '星期天 '
when 2 then '星期一 '
when 3 then '星期二 '
when 4 then '星期三 '
when 5 then '星期四 '
when 6 then '星期五 '
when 7 then '星期六 '
end