Эта группа по формуле часов? - PullRequest
0 голосов
/ 15 ноября 2011

N - количество часов для группировки

столбец DATETIME значение (например, 2011-10-08 21:23:43)

Примечание: для Mysql DB

GROUP BY date( `DATETIME` ) , N* floor( date_format( `DATETIME` , '%H' ) /N ))
  1. Является ли эта группа формулой по часам?

  2. Любая формула для группы по дням / месяцам?

1 Ответ

0 голосов
/ 15 ноября 2011
SELECT MONTH(dt) as m, DAY(dt) as d, COUNT(*) as cnt
FROM (
SELECT '2011-10-11 10:00:00' as dt
UNION ALL
SELECT '2011-10-11 20:00:00' as dt
UNION ALL
SELECT '2011-10-12 10:00:00' as dt
UNION ALL
SELECT '2011-10-12 20:00:00' as dt
UNION ALL
SELECT '2011-10-13 10:00:00' as dt
UNION ALL
SELECT '2011-10-13 20:00:00' as dt
UNION ALL
SELECT '2011-11-13 10:00:00' as dt
UNION ALL
SELECT '2011-11-13 20:00:00' as dt
) as dates
GROUP BY m, d;

Результат:

+------+------+-----+
| m    | d    | cnt |
+------+------+-----+
|   10 |   11 |   2 |
|   10 |   12 |   2 |
|   10 |   13 |   2 |
|   11 |   13 |   2 |
+------+------+-----+
...