select top 1 字段 from (已知的记录集 order by 字段 ASC)——第一天
select top 1 字段 from (已知的记录集 order by 字段 DESC)——最后一天

解决方案 »

  1.   

    declare @year int,@week int,@day datetime
    select @year = 2007,@week = 3,@day = convert(char(4),@year) + '0101'
    select dateadd(day,(@week-1)*7 -datepart(week,@day),@day) as 第一天,dateadd(day,(@week-1)*7+6-datepart(week,@day),@day) as 最后一天
      

  2.   

    declare @year int, @week int
    select @year = 2007, @week = 1
    select dateadd(day, @week * 7 - datepart(weekday, dateadd(year, @year - 1900, 0)) - 6, dateadd(year, @year - 1900, 0)),
           dateadd(day, @week * 7 - datepart(weekday, dateadd(year, @year - 1900, 0)) + 1, dateadd(year, @year - 1900, 0))
      

  3.   

    从一个已知的第一天、最后一天datepart(weekday,,)就可以的
      

  4.   

    谢谢 dulei115(前途无亮) mengmou()mengmou() 也行的,只是一周第一天是周日哦,多谢大家了