不真实的事实 table
Grain of factless fact table
在 sql 服务器 14 中设计一个 factless fact table。应该很简单,但是..:我需要检查每个 day/client/team/status 的访问量。
除了这些访问量之外,我还需要跟踪每次访问时完成的操作量。
SELECT [VISITS_PK]
,[PERIOD_SK]
,[CLIENT_SK]
,[TEAM_SK]
,[STATUSS_SK]
,[ACTIONS_SK]
FROM [dbo].[FACT_VISITS]
会 return
VISITS_PK PERIOD_SK CLIENT_SK TEAM_SK STATUSS_SK ACTIONS_SK
1 20160515 1 1 1 1
2 20160515 1 1 1 2
3 20160515 1 1 1 3
4 20160515 2 2 1 1
5 20160515 2 2 1 2
总结:完成2次访问,共完成5次操作。
跟踪操作数量允许我使用 COUNT,但如果我不想考虑这些操作而只查看我总共访问了多少次,我是否需要另一个事实 table 与另一个粮食?我宁愿使用一个事实 table,因为访问量实际上更加聚合。
编辑:actions_sk 包含维度 table 的 link,其中包含有关所执行操作的详细信息。前 3 行是一次访问,执行了 3 个操作,最后 2 行是一次访问,执行了 2 个操作。
不是每个操作一行,每次访问只有一行,以及该访问中操作的总和:
VISITS_PK PERIOD_SK CLIENT_SK TEAM_SK STATUSS ACTIONS
1 20160515 1 1 1 3
2 20160515 2 2 1 2
根据对您的数据的新理解编辑:
好的,我会将 table 名称更改为 Fact_Actions,因为这是最低级别的粒度,并且 Make 访问 SK,如下所示:
VISITS_SK PERIOD_SK CLIENT_SK TEAM_SK STATUSS_SK ACTIONS_PK
1 20160515 1 1 1 1
1 20160515 1 1 1 2
1 20160515 1 1 1 3
2 20160515 2 2 1 4
2 20160515 2 2 1 5
现在您可以通过计算行数来计算操作数,并通过计算 DISTINCT Visits_SK 值来计算访问数。
在 sql 服务器 14 中设计一个 factless fact table。应该很简单,但是..:我需要检查每个 day/client/team/status 的访问量。 除了这些访问量之外,我还需要跟踪每次访问时完成的操作量。
SELECT [VISITS_PK]
,[PERIOD_SK]
,[CLIENT_SK]
,[TEAM_SK]
,[STATUSS_SK]
,[ACTIONS_SK]
FROM [dbo].[FACT_VISITS]
会 return
VISITS_PK PERIOD_SK CLIENT_SK TEAM_SK STATUSS_SK ACTIONS_SK
1 20160515 1 1 1 1
2 20160515 1 1 1 2
3 20160515 1 1 1 3
4 20160515 2 2 1 1
5 20160515 2 2 1 2
总结:完成2次访问,共完成5次操作。
跟踪操作数量允许我使用 COUNT,但如果我不想考虑这些操作而只查看我总共访问了多少次,我是否需要另一个事实 table 与另一个粮食?我宁愿使用一个事实 table,因为访问量实际上更加聚合。
编辑:actions_sk 包含维度 table 的 link,其中包含有关所执行操作的详细信息。前 3 行是一次访问,执行了 3 个操作,最后 2 行是一次访问,执行了 2 个操作。
不是每个操作一行,每次访问只有一行,以及该访问中操作的总和:
VISITS_PK PERIOD_SK CLIENT_SK TEAM_SK STATUSS ACTIONS
1 20160515 1 1 1 3
2 20160515 2 2 1 2
根据对您的数据的新理解编辑:
好的,我会将 table 名称更改为 Fact_Actions,因为这是最低级别的粒度,并且 Make 访问 SK,如下所示:
VISITS_SK PERIOD_SK CLIENT_SK TEAM_SK STATUSS_SK ACTIONS_PK
1 20160515 1 1 1 1
1 20160515 1 1 1 2
1 20160515 1 1 1 3
2 20160515 2 2 1 4
2 20160515 2 2 1 5
现在您可以通过计算行数来计算操作数,并通过计算 DISTINCT Visits_SK 值来计算访问数。