表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