首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >年和月按代理商计算的销售额

年和月按代理商计算的销售额
EN

Stack Overflow用户
提问于 2022-05-18 22:07:01
回答 1查看 15关注 0票数 0

我有一张有agentID,transDate和transValue的桌子。我如何报告每个代理,年度和月份的所有transValue?这些列应该如下所示:代理to _每个月都必须对transValue进行总结。现在我有了一部分代码:

代码语言:javascript
运行
复制
select agentID, year(transDate), sum(transValue) as January
from operations
where month(transDate) = 01
group by agentID, year(transDate)

我不知道接下来的几个月该怎么做。有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2022-05-18 22:27:41

您可以使用条件聚合来生成报告-

代码语言:javascript
运行
复制
select agentID, year(transDate),
       sum(CASE WHEN month(transDate) = 1 THEN transValue END) as January,
       sum(CASE WHEN month(transDate) = 2 THEN transValue END) as february,
       sum(CASE WHEN month(transDate) = 3 THEN transValue END) as March,
       sum(CASE WHEN month(transDate) = 4 THEN transValue END) as April,
       sum(CASE WHEN month(transDate) = 5 THEN transValue END) as May,
       sum(CASE WHEN month(transDate) = 6 THEN transValue END) as June,
       sum(CASE WHEN month(transDate) = 7 THEN transValue END) as July,
       sum(CASE WHEN month(transDate) = 8 THEN transValue END) as August,
       sum(CASE WHEN month(transDate) = 9 THEN transValue END) as Spetember,
       sum(CASE WHEN month(transDate) = 10 THEN transValue END) as October,
       sum(CASE WHEN month(transDate) = 11 THEN transValue END) as November,
       sum(CASE WHEN month(transDate) = 12 THEN transValue END) as December
  from operations
 group by agentID, year(transDate)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72296530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档