查询要求:表中有日期字段(payTime),和交易金额字段(amount),按日期分组,对每天的交易金额进行统计。
按天统计:
select date_format(r.payTime, '%Y-%m-%d') as dateTime,round(sum(r.amount),2) as totalMoney from PatientPayLog r group by date_format(r.payTime, '%Y-%m-%d');
查询结果:
按月统计:
select date_format(r.payTime, '%Y-%m') as dateTime, round(sum(r.amount),2) as totalMoney from PatientPayLog r group by date_format(pay_time, '%Y-%m');
查询结果:
按年统计:
select date_format(r.payTime, '%Y') as dateTime,round(sum(r.amount),2) as totalMoney from PatientPayLog r group by date_format(pay_time, '%Y');
查询结果:
注:表名:PatientPayLog,r是它的别名;sum(r.account)是对每天的数据进行就和,然后round(sum(r.account),2)是对sum中的数据保留两位小数,因为数据类型是double型的所以和整形的数据相加会失精度。