趋势缓慢变化的数据

时间:2016-04-18 20:43:30

标签: tsql reporting-services data-warehouse bids

因此,我无法找到解决问题的方法。

我们刚刚实施了许多事实/维度,以便将缓慢变化的数据带入我们的仓库。场景是我们监控故障单并且我们实施了SCD,因此我们可以运行历史上显示打开故障单的报告(上周或本月1日),而不是DB当前状态。我想表明在几天内在趋势图中打开了多少张票。

Example Data 
ID; Open Count; Effective From; Effective To; 
1; 1; 28/02/2016; 05/03/2016 
2; 1; 02/03/2016; 04/03/2016 
3; 1; 03/03/2016; 04/03/2016

Charts

我想在右边制作图表,但我最后得到左边的图表。我编写了一个使用的简短代码片段。

> SELECT DT.Date, SUM(Open_Count) FROM ExampleDate ED   LEFT JOIN
> DateTime Dimension DT ON ED.Effective_From = DT.Date WHERE
>   ED.Effective_From >= '28/02/2016' AND ED.Effective_From <
> '06/03/2016' ORDER BY DT.Date

1 个答案:

答案 0 :(得分:0)

我将假设您的事实表布局意味着ID:1被认为在28/2和5/3之间打开

问题是你的加入 - 你所追求的结果要求在他们打开的每一天都重复票证记录...尝试:

select
  DT.Date, 
  SUM(Open_Count) 
FROM 
  DateTime_Dimension DT 
  inner JOIN ExampleDate ED ON DT.Date  >= ED.Effective_From and DT.Date  <= ED.Effective_To
WHERE
  ED.Effective_From >= '28/02/2016' AND ED.Effective_From < '06/03/2016' 
GROUP BY 
  DT.Date
ORDER BY 
  DT.Date