求 第20周的星期天和星期六日期的写法?

解决方案 »

  1.   

    参考:
    http://topic.csdn.net/t/20050919/10/4278688.html
      

  2.   

    求 第20周的星期天和星期六日期的写法?
    select dateadd(wk,19,dateadd(dd,number,'2011-01-01'))
    from master..spt_values 
    WHERE  type='P'
    and

    DATEPART(WEEKDAY,dateadd(dd,number,'2011-01-01'))=1
    or 
    DATEPART(WEEKDAY,dateadd(dd,number,'2011-01-01'))=7)and number<=6
    /*-----------------------
    2011-05-14 00:00:00.000
    2011-05-15 00:00:00.000(2 行受影响)
    */
      

  3.   


    Create Function xfn_GetDate(@YEAR INT,@WEEK INT,@DAY INT)
    RETURNS DATETIME
    AS
    BEGIN
     DECLARE @RST DATETIME
     SET @RST=CAST( (CAST(@YEAR AS VARCHAR(20))+'-01-01') AS DATETIME)
     WHILE @RST<CAST( (CAST(@YEAR AS VARCHAR(20))+'-12-31') AS DATETIME)
     BEGIN
      IF @WEEK=DATEPART(WW,@RST) AND @DAY=DATEPART(DW,@RST)
       RETURN @RST
      SET @RST=DATEADD(DD,1,@RST)
     END
     RETURN @RST
    END
    SELECT DBO.xfn_GetDate('2011',20,6)
    SELECT DBO.xfn_GetDate('2011',20,7)
      

  4.   

    http://topic.csdn.net/u/20081231/10/624c68b9-e9b6-4c01-910f-c116bdd14c63.html?2546http://topic.csdn.net/u/20080523/11/08e4624a-13d1-4a6c-a9bc-7cfdd721a351.html?4574http://topic.csdn.net/u/20080801/11/2f79d062-8049-4ade-a884-01dbaa429135.html?63426
      

  5.   

    http://topic.csdn.net/u/20090520/22/2267467b-0c40-4a5e-8b71-24838be0ff64.html?10943