【问题标题】:Calculations for time periods SQL时间段 SQL 的计算
【发布时间】:2016-07-01 10:44:37
【问题描述】:

如何在SQL中计算某个时间段的一些KPI?

我有 3 列:

Customer     CalendarWeek     Sum

我想计算从数据开始到给定 CW 期间的总和。因此,对于 201501,这意味着我要计算数据集开头的数据(201301)的总和,直到 201501。对于 201502,从 201301 到 201502。对于 201503,从 201301 到 201503 等。

CalendarWeek 列始终是时间段的最大周数。

基本上返回应该是这样的:

Customer A    201501     1200
Customer A    201510     4000
Customer B    201501     200

其中 201501 是计算 1200 的期间的结束时间。 1200 用于客户 A,从 201401 到 201501。

【问题讨论】:

  • 请用您使用的数据库标记您的问题。此外,请提供样本数据和所需的结果。

标签: mysql sql datetime time


【解决方案1】:

如果您只想要某一周的总和,您可以这样做:

select sum("sum")
from t
where calendarweek <= '201501';

如果您想为每个客户执行此操作,请将 Customer 添加到 select 并将 Customer 添加到 group by

【讨论】:

  • 是的,但是像这样我过滤了
  • @Mats 。 . .编辑问题并显示您正在使用的查询、您当前的输出以及您想要获得的结果。
  • 我编辑了。仍然没有任何疑问,我正在寻找如何解决它的想法。可能需要一个子查询来确定周期。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多