使用MDX忽略重复天数值

使用MDX忽略重复天数值,mdx,olap,saiku,Mdx,Olap,Saiku,如何使用MDX忽略重复天数值 例如,从以下方面: 1997年1月12日 1997年12月2日 12/3/1998 12/4/1999 为此: 十二, 我已经尝试过使用Distinct,但我认为它们仍然是独一无二的日期 SELECT {} ON COLUMNS, DISTINCT([Time].[Weekly].[Day].Members) ON ROWS FROM [Sales 2] 这些是不同的值,您的多维数据集将它们视为不同的值。我想你可以通过创建一个只包含日期部分的成员

如何使用MDX忽略重复天数值

例如,从以下方面:

  • 1997年1月12日
  • 1997年12月2日
  • 12/3/1998
  • 12/4/1999
为此:

  • 十二,
我已经尝试过使用Distinct,但我认为它们仍然是独一无二的日期

SELECT 
  {} ON COLUMNS,
  DISTINCT([Time].[Weekly].[Day].Members) ON ROWS FROM [Sales 2]

这些是不同的值,您的多维数据集将它们视为不同的值。我想你可以通过创建一个只包含日期部分的成员并在该成员上执行distinct,来模仿MDX的这种行为。比如:

WITH MEMBER [MonthPart] AS LEFT([Time].[Weekly].[Day].currentMember, 2) 

SELECT 
  {} ON COLUMNS,
  DISTINCT([MonthPart].Members) ON ROWS FROM [Sales 2]
类似的东西,但我不确定正确的语法


解决这个问题的正确方法是为多维数据集中的日期创建一个好的时间维度。在那里,您可以定义层次结构和级别,只需使用[Month]部分即可满足您的需求(这比编写复杂的MDX查询要快得多)

您的模型应该支持这一点。您应该使用该值向时间维度添加一个新成员。[月份]属性。