数据仓库,对于非重复计数如何设计?比如人数

0
对于非重复计数的指标,大家在涉及的时候都是怎么做的?

比如,有个课程表,要计算人数
2015-1-1 语文  张三
2015-1-1 数学  张三
2015-1-1 语文  李四
2015-1-2 数学  张三
2015-1-2 英语  张三
2015-1-2 英语  李四

如果按照日期维度,统计人数,则是
日期     人数
2015-1-1   2
2015-1-2   2

如果按照日期+课程维度,则是
日期
2015-1-1 语文  2
2015-1-1 数学  1
2015-1-2 数学  1
2015-1-2 英语  2

如果维度更多的话,总不能一个维度组合就建立一套表吧?
有没有比较综合的,可以减少建表数量的方法?
已邀请:
0

gogodiy - 天善智能数据库专家、Tableau爱好者 2015-10-29 回答

你的课程表,就是一张事实表,以后有新的维度,只需要添加到这张事实表即可,没必要再创建新表。你这个例子,是个非常典型的星型模型。
1

老头子 - 专注是唯一的捷径 2015-10-29 回答

就一张表就行,
如果想提前算好数据,直接展示可以增加个场景ID(空间换时间)。
如果不想算好数据(数据量不大),一个分析函数搞定。
0

seng - 从事BI、大数据、数据分析工作 2015-10-29 回答

gogodiy说的很对, 做一张事实表就可以了, 事实指标就是count(distinct cloumn)). 数据量不多,不需要这么多汇总的。

要回复问题请先登录注册