SSAS维度中的浮点转换问题

时间:2012-11-21 06:58:52

标签: floating-point ssas dimension

我对SSAS维度有疑问。我在表中有一个float数据类型的列。此列中的值类似于

  • 0
  • 0.0001
  • 0.0002
  • 0.0003
  • 0.0004

但是当我在SSAS中的这个列上创建一个维度时,它会以科学记数法转换浮动值,例如(顺便说一下,除了某些值之外的所有值都被转换)

  • 0
  • 0.0001
  • 2.000000000000001E-4
  • 2.999999999999997E-4
  • 4.000000000000002E-4

有人可以告诉我如何解决这个问题

1 个答案:

答案 0 :(得分:1)

这就是SSAS代表浮点数的方式。价值没有错,只是没有你想要的阅读方式。

如果要以小数形式查看,请尝试将输入数据类型(在ssas之前的视图中)更改为十进制,即

SELECT      Id, CAST(floatValue AS decimal(10, 6)) AS decimalValue 
FROM        YourTable 

这样,SSAS会将​​小数点固定为固定的小数位数并显示0.000200,而不是2.000000000000001E-4