想根据月份查询总数,请问下面两条sql哪个速度会快一点,如果有更好的方案的话,麻烦大神们给出,先谢谢了。
select count(1) from table1 where c_time > ‘2014-10-01 00:00:00’ and c_time < ‘2014-11-01 00:00:00’;
select count(1) from table1 where c_time like ‘2014-10%’;
个人觉得第一种写法效率高,因为like模糊匹配效率是最低的,需要扫表
跟题目无关。
截至时间应该是当日的23:59:59吧 -w-
要看c_time类型 想快就建一列yyyy-mm用来查
http://stackoverflow.com/questions/409286/datetime-vs-timestamp
like效率太低,如无必要,切勿使用