MySQLでdatetime型のカラムから日付データを取り出すメモ
2010 年 8 月 20 日
コメントはありません
->
タイトルの通り、
MySQLを使っていて、日ごとの集計データを取りたい時など、datetime型のカラムから日付を取ってきたい場合がよくある。
そんな時に使えそうな情報を見つけたのでメモ。
datetime型のカラムから日付データを引っ張ってくる際の高速化
このサイトによると、
SELECT * FROM item WHERE 'datetime' LIKE '2010-06-23%'; SELECT * FROM item WHERE 'datetime' >= '2010-06-23 00:00:00' AND 'datetime' <= '2010-06-23 23:59:59';
こんなクエリを投げるとインデックスが効かないらしい。
これを書き換えて、
SELECT * FROM item WHERE 'datetime' BETWEEN '2010-06-23 00:00:00' AND '2010-06-23 23:59:59';
と書くとdatetime型のインデックスが有効になって高速化できるとのこと。
ひとまずこれを使っているが、実はまだベンチマークはしていない…(汗)
