Ssas 如何在MDX中将列定义为double的数据类型?

Ssas 如何在MDX中将列定义为double的数据类型?,ssas,mdx,Ssas,Mdx,我是MDX和analysis services的新手,请耐心听我说。当我运行下面的MDX查询时,A-I列的结果值返回为double,但是当is应该是double时,列元数据将数据类型显示为object类型。我如何强制它识别双重数据类型,我甚至可以这样做吗?我不确定它是如何推断它是object类型的 WITH MEMBER [Column (A)] AS [Measures].[ColumnA] MEMBER [Column (B)] AS [Measures].[

我是MDX和analysis services的新手,请耐心听我说。当我运行下面的MDX查询时,A-I列的结果值返回为double,但是当is应该是double时,列元数据将数据类型显示为object类型。我如何强制它识别双重数据类型,我甚至可以这样做吗?我不确定它是如何推断它是object类型的

WITH
        MEMBER [Column (A)] AS [Measures].[ColumnA]
        MEMBER [Column (B)] AS [Measures].[ColumnB]
        MEMBER [Column (C)] AS [Measures].[ColumnC]
        MEMBER [Column (D)] AS [Measures].[ColumnD]
        MEMBER [Column (E)] AS [Measures].[ColumnE]
        MEMBER [Column (F)] AS [Measures].[ColumnF]
        MEMBER [Column (G)] AS [Measures].[ColumnB] - [Measures].[ColumnA]
        MEMBER [Column (H)] AS [Measures].[ColumnD] - [Measures].[ColumnC]
        MEMBER [Column (I)] AS [Measures].[ColumnF] - [Measures].[ColumnE]
        SELECT 
        NON EMPTY
        {
            Column (A),
            Column (B),
            Column (C),
            Column (D),
            Column (E),
            Column (F),
            Column (G),
            Column (H),
            Column (I)
        } ON COLUMNS,
        NON EMPTY
        CROSSJOIN(
            CROSSJOIN([T].[TB].[TB],

                  [T].[TT].[TT]),

                  [T].[TR].[TR])  
        ON ROWS
        FROM RePro          
        WHERE 
        (
            [RS].[RS].[EOD],
                [RD].[RD].[DATE],
                [P].[P].[ABCD]
        )
        CELL PROPERTIES VALUE

提前感谢

您可以尝试CDbl功能。我在上面找到了一些例子:


我可能在这里遗漏了一些上下文,但是
[Measures].[ColumnA]
本身是否定义为
decimal
(或
money

如果是的话,你能试试对你的MDX做一点小小的改变吗

WITH MEMBER [Column (A)] ...
改成

WITH MEMBER [Measures].[Column (A)] AS [Measures].[ColumnA] 
这样,当您保持相同的度量上下文时,数据类型定义将被完全传播