如何在 mdx 中将值格式化为带 2 位小数的浮点数?

How to format value as float with 2 deciaml only in mdx?

这是我的价值:

值 -0,00398911382022891

和统计这个值的会员

         MEMBER [Date].[Percentage] AS 
              ([Date].[AverageSaleNumberThisYear] - [Date].[AverageSaleNumberPreviouseYear] )/ [Date].[AverageSaleNumberThisYear].

如果我使用 FORMAT_STRING = "Percent" 我得到这个值:-0,40%,但我想要完全相同但没有 % 符号。

您可以在 MDX 中使用 custom format strings。听起来你想要

FORMAT_STRING = "0.00"

FORMAT_STRING = "Fixed"

我假设您真的不想将值乘以 100,这正是 "Percent" 所做的)

如果您想要它乘以 100,那么在表达式中这样做:

     MEMBER [Date].[Percentage] AS 
          100 * ([Date].[AverageSaleNumberThisYear] - [Date].[AverageSaleNumberPreviouseYear] ) / [Date].[AverageSaleNumberThisYear].

尝试 z 中使用的技术:

WITH 
  MEMBER [Measures].[x] AS 
    -0.003989113 
   ,FORMAT_STRING = "Fixed" 
  MEMBER [Measures].[y] AS 
    -0.003989113 
   ,FORMAT_STRING = "0.00" 
  MEMBER [Measures].[z] AS 
    Round(-0.003989113*100,2) 
SELECT 
  {
    [Measures].[x]
   ,[Measures].[y]
   ,[Measures].[z]
  } ON 0
FROM [AdventureWorks];