统计一个月,一周,一天24小时的订单收益需求之 Mysql

业务场景描述

1.商铺须要查看一天 24 小时,00 到 24 点的每种订单类型的收益
2.商铺须要查看 一周,后者一个月的以天为单位的每种订单类型的收益

Mysql 语句

1 . 求以小时为分类

select FROM_UNIXTIME(create_time,"%H") as hour,sum(amount),order_type FROM order WHERE create_time  BETWEEN '起始时间戳' AND '结束时间戳' AND pay_status in (1,3,5)
GROUP BY hour,order_type ;

2 . 求以天数为分类

select FROM_UNIXTIME(create_time,"%d-%H") as hour,sum(amount),order_type FROM order WHERE create_time  BETWEEN '起始时间戳' AND '结束时间戳' AND pay_status in (1,3,5)
GROUP BY hour,order_type ;

先转换时间戳类型,而后根据时间戳类型分组,求和就完成了mysql

3 几个 PHP 时间类型转换函数

1.date_diff
2.date_create
3.date_formate
4.date_add
5.date_interval_create_from_date_string

总结,这样就能够求出一天或者一小时分组的中金额,固然还须要本身组装数据格式。不过这样有一个坏处就是,mysql 没有用到索引。

相关文章
相关标签/搜索