有数据如下:
year    Week
2011    2
2011    3
2011    4
2011    5想知道2011年的第二周起始日期和结束日期是哪2个?
求帮助

解决方案 »

  1.   

     SELECT year, week, x.start, ADDDATE(x.start, 6) AS end
       FROM (
     SELECT ADDDATE(jan1, (t.week - WEEK(jan1, 5)) * 7 - WEEKDAY(jan1)) AS start, year, week
       FROM (SELECT MAKEDATE(`year`, 1) AS jan1, year, week FROM t_table) t
     ) x;+------+------+------------+------------+
    | year | week | start      | end        |
    +------+------+------------+------------+
    | 2011 |    1 | 2011-01-03 | 2011-01-09 |
    | 2011 |    2 | 2011-01-10 | 2011-01-16 |
    | 2011 |    3 | 2011-01-17 | 2011-01-23 |
    | 2011 |   52 | 2011-12-26 | 2012-01-01 |
    +------+------+------------+------------+
      

  2.   

    其中week(date, mode) 函数的含义:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_week