崔达文

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

开发要求,获取当月佣金,主要卡在了sql对datetime 类型的判断

先后用过4种方法如下

1.select sum('price') from rrr_order_level where active_time < "2015-09-30 00:00:00";
2.select sum('price') from rrr_order_level where timestampdiff(hour,'2008-08-08 12:00:00','2008-08-08 00:00:00') > 0
3.select sum('price') from rrr_order_level where active_time < '$EndDate' and active_time > '$BeginDate'"
4.select sum('price') from rrr_order_level where active_time between '2015-09-01 00:00:00' and '2015-09-30 00:00:00';

 

数据库如上

分析错误,mysql不知道对应的年月日,无法比较,采用

select sum(price) from rrr_order_level where active_time >= STR_TO_DATE('2015-09-01 00:00:00','%Y-%m-%d %H:%i:%s') and active_time <= STR_TO_DATE('2015-09-30 00:00:00','%Y-%m-%d %H:%i:%s');

完美解决问题!

posted on 2016-04-11 16:44  崔达文  阅读(12980)  评论(0编辑  收藏  举报