nowindxdw
11/21/2017 - 5:33 AM

MySQL中如何按月统计数据

表finance有俩个字段如下

date date

money double(15,2)

下面需要对表 finance的2010年财务数据,按月进行统计

Sql代码

select DATE_FORMAT(date,'%Y-%m') as month,sum(money) as money   
from finance   
where DATE_FORMAT(date,'%Y')=2010   
group by month   
order by month
下面是按周统计

查看MySQL的manual

%X Year for the week where Sunday is the first day of the week, numeric, four digits; used with %V

%x Year for the week, where Monday is the first day of the week, numeric, four digits; used with %v

   其中

1如果周一为一周的第一天,则(小写) DATE_FORMAT(date,'%x %v')

2如果周日为一周的第一天,则(大写) DATE_FORMAT (date,'%X %V')

Sql代码

select DATE_FORMAT(date,'%x年-第%v周') as week,sum(money) as money   
from finance_base   
where DATE_FORMAT(date,'%Y')=2010   
group by week