我对BI设计数据库很陌生,在这一点上我不太了解。 我正在尝试导入法国人口普查数据,我在其中获取每个城市的人口。对于每个城市,我都有不同年龄段的人口,它们之间并没有真正的联系。
例如,假设一种分类是00到20岁,21到59和60+ 另一种是更精确的方法:00到02、03到05等,但是范围永远不会与第一个分类相同:例如,我没有15到20,而是18到22。
因此,这两个分类不兼容。如何在事实表中使用它们?我应该使用2个事实表和2个多维数据集吗?我应该使用一个事实表,为1个多维数据集使用2个维度吗?但是在这种情况下,当我汇总一个城市的总人口时,我将有双重计算的事实,不是吗?
这是国家人口普查数据和国家分类,因此不能更改或估计人口以混合这些分类。需要明确的是,一行与一个人无关,而是与一个城市有关。我的事实不是个人,而是城市人口。 所以这个表就像: 第1行:一个城市-一定数量的人口-一个针对这个年龄段的昏暗年龄(例如00到19岁)的代码-该年龄段的昏暗性别的代码(m / f)-人口普查日期 第2行:同一城市-一定数量的人口-一种针对这个人口的昏暗年龄(例如20至34岁)的代码-昏暗性别的代码(m / f)-人口普查日期 因此,很多城市,无论是性别还是多年的城市都适用。 一样
我希望这个问题很清楚,因为英语不是我的母语,并且我在DB和BI领域还很新!
感谢您的帮助。
答案 0 :(得分:0)
使用单个事实表和针对年龄范围的两个维度的一种可能的解决方案:
1-基于最广泛的人口普查的分类范围,例如:
然后,您可以将其他人口普查与该维度关联起来,并带有近似值,例如18-22可以是Young。
2-原始年龄范围。当您报告单个城市时,此维度可以用于精确的年龄范围,也可以帮助您评估重叠边界的影响(例如,年轻/ 18-22岁的年龄段有多少行?)
答案 1 :(得分:0)
您可以按以下方式创建一个尺寸
1-20岁 成人21-59 60岁以上的老人
分类为 青年城市1:1-20 青年城市2:4-23
id field1 field2 field3 field4 .......
1 1 year young_city_1 other .......
2 2 year young_city_1 other .......
3 3 year young_city_1 other .......
4 4 year young_city_1 young_city_2 .......
现在您可以从任何项目和任何部门进行报告
希望对您有帮助