Mdx,大于 String 而不是 Numeric (Saiku) 之类的作品
Posted
技术标签:
【中文标题】Mdx,大于 String 而不是 Numeric (Saiku) 之类的作品【英文标题】:Mdx, greater than works like String and not Numeric (Saiku) 【发布时间】:2018-09-10 21:06:28 【问题描述】:我正在使用 Saiku 并尝试在默认销售多维数据集中使用符号“>(大于)”按 mdx 进行过滤。问题是它像字符串而不是数字一样过滤。我想要的以下查询的值是 [51,52],但服务器 olap 响应是 [6,7,8,9,51,52]。知道如何过滤吗?
这是查询:
WITH
SET [~ROWS] AS
FILTER([Time].[Weekly].[Week].Members, [Time].[Weekly]. [Week].CurrentMember.Properties("Caption") > '50')
SELECT
NON EMPTY [Measures].[Unit Sales] ON COLUMNS,
NON EMPTY [~ROWS] ON ROWS
FROM [Sales]
【问题讨论】:
【参考方案1】:响应是使用'Cint',如下所示:
WITH
SET [~ROWS] AS
FILTER([Time].[Weekly].[Week].Members, Cint([Time].[Weekly].[Week].CurrentMember.Properties("Caption")) > 50)
SELECT
NON EMPTY [Measures].[Unit Sales] ON COLUMNS,
NON EMPTY [~ROWS] ON ROWS
FROM [Sales]
【讨论】:
【参考方案2】:我认为可能有其他方法。尝试一些可能会更有效。
WITH MEMBER Measures.ValueColumn as [Date].[Calendar].[July 1, 2001].MemberValue
MEMBER Measures.KeyColumn as [Date].[Calendar].[July 1, 2001].Member_Key
MEMBER Measures.NameColumn as [Date].[Calendar].[July 1, 2001].Member_Name
SELECT Measures.ValueColumn, Measures.KeyColumn, Measures.NameColumn ON 0
from [Adventure Works]
【讨论】:
以上是关于Mdx,大于 String 而不是 Numeric (Saiku) 之类的作品的主要内容,如果未能解决你的问题,请参考以下文章