MySQL

月、日、時間ごとにレコードの数を集計する

timeというdatetime型のカラムがあるとして

月ごと

SELECT COUNT(*),time FROM tests GROUP BY DATE_FORMAT(time, '%Y%m');

日ごと

SELECT COUNT(*),time FROM tests GROUP BY DATE_FORMAT(time, '%Y%m%d');

時間ごと

SELECT COUNT(*),time FROM tests GROUP BY DATE_FORMAT(time, '%Y%m%d %H');