MySQLで日付毎の集計を計算する

 データベースを使って集計表見たいなものを作っていると、日付毎の合計数などが知りたい場合がある。
普通にレコードに記録した日付でグループ化して合計とれば良い、というのはわかるけど
日付の型をDATETIMEにしていると時、分、秒も要素として入ってしまうので同じ日付でも1秒違うと違う
グループになってしまう。まあ、当たり前だ。

では、これをシンプルにまとめるコードが無いかと思い調べたのでメモ。
例えば

id | ip | update_time
——————————————–
1 | 192.168.0.1 | 2012-06-29 11:11:11
——————————————–
2 | 192.168.0.2 | 2012-06-29 11:11:12
——————————————–
3 | 192.168.0.1 | 2012-06-29 11:11:13

見たいなテーブルがあったとしたら、
substringを使って日付部分の文字を切り出し、その結果をselect文に入れてグループ化する。
具体的には以下のような感じ。

select substring(update_time,1,10) as date,count(id) as cut
 from tbl group by date

 MySQLを使いました。