【问题标题】:Analysis services 2008 : decimal numbers truncate in cube olap分析服务 2008:在多维数据集 olap 中截断十进制数
【发布时间】:2011-11-28 11:28:49
【问题描述】:

我正在研究 olap 多维数据集(使用分析服务 2008)。在我的数据库中,我有一列(数据类型 =NUMBERS(40,30))。在此列中,在 coma 示例之后有 10 个数字的值:125.256987452122 或 159.2365894123658

在我的多维数据集 olap 中,该列与度量匹配。当我查看立方体中的值时, 我与数据库没有相同的价值。示例:125.256987452122 ==> 在多维数据集 125.2569 或 159.2365894123658 ==> 在多维数据集 159.2365

即使我设置度量属性 FORMATSTRING = ''### ### ### ### ##0.0000000000;-### ### ### ### ##0.0000000000'' 我得到这个结果 25.256987452122 ==> 在立方体 125.2569000000 或 159.2365894123658 ==> 在立方体 159.2365000000 中。

测量数据类型是 Double 。我将其更改为货币,但我遇到了同样的问题。

是否有人知道如何在我的多维数据集 olap 中获得与数据库中相同的结果: 159.2365894123658 ==> 在立方体 159.2365894123658 ???

感谢您的回答

【问题讨论】:

    标签: ssas olap


    【解决方案1】:

    也许不是最佳解决方案,但请考虑将数据以浮点数形式存储在底层数据库中,或者使用视图加载将其转换为浮点数的事实表。除非您使用 Float,否则 SSAS 多维数据集只会显示 4 位数字。

    您可以通过在 DSV 中使用当前数据类型探索数据来验证这一点,它应该显示所有小数,但 SSAS 只会显示 4 位。

    【讨论】:

    • 您好,感谢您的回答。但即使我将数据作为浮点数存储在底层数据库中,立方体中也只有 4 位数字。底层数据库是oracle数据库。我将数据类型 NUMBER(40,10) 更改为浮点数。但有同样的问题。我用于度量的数据类型是 DOUBLE。
    • 使用浮点数作为度量的数据类型,而不是双精度数。
    • 多维数据集 olap 中的度量没有数据类型 Float。只有 Double 和 Currency
    猜你喜欢
    • 2015-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多