在 OLAP 多维数据集中使用 varchar 字段定义度量

Defining measure with a varchar field in OLAP Cube

我正在尝试使用 SQL Server Analysis Services 从预先存在的数据库创建多维数据库。我的问题是原始数据库将所有信息存储在名为 "value" 的 varchar 字段中。该字段中的内容取决于保存统计类型的另一个字段。因此,我可以有一个 statistic_type "number of products sold" 值为 1000 的事实和另一个 "cost of material bought" 值为 5000 的事实。这些值可以具有完全不同的含义,有些是数值,有些是百分比和其他是字符串。

如何将这些转化为措施。 statistic_type 是否应该是多维数据集的维度并将值作为度量?度量是否总是需要有一个数值?我是否应该将事实 table 分成几个 table ,每种统计数据一个?或者是否有一些明智的方法可以仅使用 table.

创建一个立方体

这是我第一次使用多维数据库和 SSAS,所以我有点迷茫。

度量总是需要有一个数值。事实上,您可能必须在数据源视图中将值列转换为数字数据类型,以便它甚至成为多维数据集中度量的候选对象。

您应该将 statistic_type 设为维度,将 "value" 设为度量。只使用 table 是可以的,尽管如果您对不同的 statistic_type 进行查找 table 可能更容易使用。