我每天都有不同分支机构的销售记录。例如
Date Amount Branch
01/01/2014 30 A
01/01/2014 30 B
01/02/2014 40 A
01/02/2014 40 B
01/03/2014 30 A
01/03/2014 30 B
up to feb,mar,apr,may,jun,jul,aug
我要实现的是根据今天的日期将每月的记录分组。
例如,今天是2014年8月11日。范围应该是月份“ 1”的第一天,那么我今天将选择11天。因此,所有月份的范围都是1-11。请参阅以下示例。
Date Range for query monthly
01/01/2014-01/11/2014
02/01/2014-02/11/2014
03/01/2014-03/11/2014
04/01/2014-04/11/2014
05/01/2014-05/11/2014
06/01/2014-06/11/2014
07/01/2014-07/11/2014
08/01/2014-08/11/2014
将此日期范围分组,以获取总销售额。
请帮忙
这应该完成大部分工作:
SELECT MONTH(date), SUM(amount)
FROM table_name
WHERE DAY(date) <= DAY(CURDATE())
AND date >= YEAR(CURDATE())
GROUP BY MONTH(date);
更新
对于3个字母的月份标签,您可能还需要ORDER BY来确保:
SELECT DATE_FORMAT(date,'%b'), SUM(amount)
FROM table_name
WHERE DAY(date) <= DAY(CURDATE())
AND date >= YEAR(CURDATE())
GROUP BY MONTH(date)
ORDER BY MONTH(date);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句