繁体   English   中英

转帖:SQL查询按月/年汇总金额

[英]Repost : SQl query to sum-up amounts by month/year

在这里重新发布链接

我的查询是

SELECT MONTH(now()) as m, SUM(total) as grandtotal
FROM tb
group BY YEAR(now()), MONTH(now())

我正在寻找如何从今年和月份获得总计,但我的总计也是去年的总和。 例如,我有 2018 年 8 月 = 20 年和 2017 年 8 月 = 40 年的数据。 所以我的总数将是 60 而不是 20。

示例 sqlfiddle

仅在 group by 中使用月份 - 它将为您提供月份级别的总和,但如果您将年份也按级别分组,那么它将显示年份和月份的总和

SELECT MONTH(now()) as m, SUM(total) as grandtotal
FROM tb
group BY MONTH(now())

根据上次的回答

select year(date) as y, month(date) as m, sum(paid) as p
from table
where year(now()) = year(date) and month(now()) = month(date)
group by year(date), month(date)

请注意,如果您的表定义不同,则列名也可能不同。

您应该按字段的值分组,而不是按常量分组。

SELECT MONTH(YourDateField) as m, SUM(total) as grandtotal
FROM tb
WHERE YEAR(YourDateField) = YEAR(now())
GROUP BY YEAR(YourDateField), MONTH(YourDateField)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM