Sql 如何在mdx中将值格式化为仅含2分贝的浮点值?
以下是我的价值观: 值-000398911382022891 和计算此值的成员Sql 如何在mdx中将值格式化为仅含2分贝的浮点值?,sql,ssas,mdx,Sql,Ssas,Mdx,以下是我的价值观: 值-000398911382022891 和计算此值的成员 MEMBER [Date].[Percentage] AS ([Date].[AverageSaleNumberThisYear] - [Date].[AverageSaleNumberPreviouseYear] )/ [Date].[AverageSaleNumberThisYear]. 如果我使用FORMAT_STRING=“Percent”,我得到的值是:-0
MEMBER [Date].[Percentage] AS
([Date].[AverageSaleNumberThisYear] - [Date].[AverageSaleNumberPreviouseYear] )/ [Date].[AverageSaleNumberThisYear].
如果我使用FORMAT_STRING=“Percent”,我得到的值是:-0,40%,但我想要的是完全相同的值,但没有%
符号。您可以在MDX中使用。听起来像是你想要的
FORMAT_STRING = "0.00"
或
我假设您不想将值乘以100,这就是“百分比”的作用)
如果要将其乘以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];
然后它返回0.00而不是0。40@Timsen那么你想把它乘以100?然后在表达式中执行乘法,而不是在格式字符串中执行乘法。
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];