查询每天的;
时间段内,按天进行统计 DATE_FORMAT()函数是,返回日期格式,这个自己设置。
select DATE_FORMAT(add_time,"%Y-%m-%d") AS 交易时间,sum(order_amount) as sumamount from club_order where add_time>'2021-01-01' and add_time<'2021-02-01 239:59'
group by day(add_time);
查询每小时的;
是把时间段内的分成24小时,进行统计。
select hour(add_time)as 交易时间段 , sum(order_amount) as sumamount from club_order where add_time>'2021-01-01' and add_time<'2021-01-28 239:59'
group by hour(add_time);
分月查询数据:
SELECT
MONTH ( 那个日期的字段 ),
SUM( 需要统计的字段, 比如销售额什么的 )
FROM
表
WHERE
YEAR ( 那个日期的字段 ) = 2010 -- 这里假设你要查 2010年的每月的统计。这里可以加上其他条件。
GROUP BY
MONTH ( 那个日期的字段 )
分天查询数据:
SELECT
DAY ( 那个日期的字段 ),
SUM( 需要统计的字段, 比如销售额什么的 )
FROM
表
WHERE
( 那个日期的字段 ) BETWEEN ? AND ? -- 这里插入你要查询的时间段,也可以加上其他条件。
GROUP BY
DAY ( 那个日期的字段 )
分小时查询
SELECT
HOUR ( 那个日期的字段 ),
SUM( 需要统计的字段, 比如销售额什么的 )
FROM
表
WHERE
( 那个日期的字段 ) BETWEEN ? AND ? -- 这里插入你要查询的当天时间,也可以加上其他条件。
GROUP BY
HOUR ( 那个日期的字段 )
举例说明:
我这里要查的是成交的订单数据,表名为od_base,用的时间段是订单提交时间,字段为ORDER_COMMITTIME,要统计的是订单总金额,字段为RECEIVABLE;
这里查询每一天的数据的sql如下:
SELECT
DAY ( o.ORDER_COMMITTIME ),
SUM( o.RECEIVABLE )
FROM
od_base o
WHERE
o.ORDER_COMMITTIME BETWEEN '2018-02-06 10:27:34' AND '2018-03-06 10:27:34'
GROUP BY
DAY ( o.ORDER_COMMITTIME )