MySQL: диапазон дат недели от номера недели в запросе

У меня есть таблица базы данных, которая выглядит примерно так:

| id         | clock         | info
----------------------------------------------
| 1          | 1262556754    | some info
| 2          | 1262556230    | some other info
| 3          | 1262556988    | and another
| 4          | 1262555678    | and some more

Она содержит записи журнала и временную метку unix, когда этот журнал был записан. Что мне нужно, так это получать еженедельный отчет о том, сколько записей журнала было за каждую неделю. Вот запрос, который я написал:

SELECT
    DATE_FORMAT(FROM_UNIXTIME(clock), "%U") AS week
count(*) as cnt
FROM logs
WHERE DATE_FORMAT(FROM_UNIXTIME(clock), "%Y") = '2010'
GROUP BY week

Это дает следующий результат:

| week       | cnt
-------------------------------
| 1           | 55 
| 2           | 134   
| 4           | 765
| 20          | 65

Отлично! Но я бы хотел видеть диапазоны дат вроде 08 февраля 2010 г. 00:00 - 15 февраля 2010 г. 00:00 , поэтому мой набор результатов будет выглядеть так:

| day_start           | day_end           | cnt
---------------------------------------------------------
| 08 Feb 2010 00:00   | 15 Feb 2010 00:00 | 55 
| 15 Feb 2010 00:00   | 22 Feb 2010 00:00 | 76
| 22 Feb 2010 00:00   | 01 Mar 2010 00:00 | 756

Есть ли способ сделать это?

6
задан Silver Light 14 September 2010 в 09:06
поделиться