每小时销售到Reporting Services视图,SQL

时间:2011-11-07 08:36:13

标签: sql reporting-services left-join

我有一张桌子:Hourly_Sales就是这样(计算购买东西的数量和ID检查):

Store    Time    Year   Month     Count_Service    Count_Service_ID_Check
00001    09:00   2011   8         40               3
00001    10:00   2011   8         50               5
00001    15:00   2011   8         50               5

现在我希望能够在Reporting Services中以这样的方式显示它:

                       09:00   10:00    11:00    12:00    13:00    14:00    15:00
Store: 00001    
Count_Service          40      50       0        0         0       0        50
Count_Service_ID_Check 3       5        0        0         0       0        5

这就是我想添加没有交易的小时数,并添加0。

我有一张时间表:Dim_TimeTable 这是填充时间和商店ID:

Store   Time
00001   09:00
00001   10:00
00001   11:00
00001   12:00
00001   13:00
00001   14:00
00001   15:00

在Hourly_Sales上进行LEFT JOIN不足够吗?

我发现了一个类似的问题,但无法得到我的问题的答案: SQL Query to return 24 hour, hourly count even when no values exist?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

是 - 使用:

select t.store, t.time, s.Count_Service, s.Count_Service_ID_Check
from Dim_TimeTable t
left join Hourly_Sales s on t.store = s.store and t.time = s.time

作为您的查询,然后使用矩阵显示整个页面的时间。