MDX“;“过滤器”;不工作状态

MDX“;“过滤器”;不工作状态,mdx,pentaho,Mdx,Pentaho,现在我的问题是MDX查询中的过滤条件 SELECT NON EMPTY { [Channel].[Grand Total], [Channel].[Grand Total].Children } ON COLUMNS, NON EMPTY { [Offer].[Grand Total], [Offer].[Grand Total].Children } ON ROWS FROM [SCMAircelCube] WHERE ( [Measure

现在我的问题是MDX查询中的过滤条件

SELECT
NON EMPTY { [Channel].[Grand Total],
            [Channel].[Grand Total].Children } ON COLUMNS,
NON EMPTY { [Offer].[Grand Total],
            [Offer].[Grand Total].Children } ON ROWS 
FROM
  [SCMAircelCube]
WHERE
( [Measures].[TotalCount], 
  [BasicCause].[Subscriber activated successfully] ,
  [SubscriberProfile].[Active], 
  [Circle].[ASSAM])
此查询的问题是,它显示以“AOL”开头的报价。实际上,我不想在报告中显示该报价。因此,我尝试使用筛选条件。但它也不起作用。我遇到错误。有人可以帮助我吗 我想对行使用筛选条件。我使用了以下MDX进行筛选。但出现错误

SELECT
NON EMPTY { [Channel].[Grand Total],
            [Channel].[Grand Total].Children } ON COLUMNS,
FILTER( { [Offer].[Grand Total],
          [Offer].[Grand Total].Children !=[AOL]} ) ON ROWS
FROM
  [SCMAircelCube]
WHERE
( [Measures].[TotalCount], 
  [BasicCause].[Subscriber activated successfully] , 
  [SubscriberProfile].[Active], 
  [Circle].[ASSAM])
谢谢和问候 plshelpmep

是最可能导致问题的原因,您可以尝试以下方法:

FILTER( { [Offer].[Grand Total],[Offer].[Grand Total].Children}, 
        [Offer].[Grand Total].currentmember is not [Offer].[Grand Total].[AOL] )
作为对您的评论和问题的回答:

SELECT 
 { [Channel].[Grand Total], [Channel].[Grand Total].Children } ON COLUMNS, 
 FILTER ( {[Offer].[Grand Total], [Offer].[Grand Total].Children }, 
   not([Offer].[Grand Total].currentmember is [Offer].[Grand Total].[AJOKED]) ) ON ROWS
FROM [SCMAircelCube] 
WHERE ( [Measures].[TotalCount], [Time].[2012].[1], [BasicCause].[Subscriber activated successfully], [ContentCategory].[SMS], [SubscriberProfile].[Active], [Circle].[KARNATAKA])

您可以使用EXCEPT功能:

SELECT
NON EMPTY { [Channel].[Grand Total],
            [Channel].[Grand Total].Children } ON COLUMNS,
 { [Offer].[Grand Total], EXCEPT({[Offer].[Grand Total].Children}, {[Offer].[Grand Total].[AOL]})}  ON ROWS
FROM
  [SCMAircelCube]
WHERE
( [Measures].[TotalCount], 
  [BasicCause].[Subscriber activated successfully] , 
  [SubscriberProfile].[Active], 
  [Circle].[ASSAM])

您好..,我使用上面的“筛选器”条件将MDX查询更改为以下格式,如您的..但现在我再次遇到类似“查询执行失败”的错误,在执行这样的查询时遇到异常..任何想法…我使用的MDX Qry是..选择{[Channel].[Grand Total],[Channel].[Grand Total].[Grand Total].Children}在列上,在[SCMAircelCube]中([Measures].[TotalCount],Time].[2012].[1],[BasicCause].[Subscriber已成功激活],[ContentCategory].[SMS],[SubscriberProfile].[Active]的行上筛选({[Offer].[Grand Total],[Offer].[Grand Total].[Grand Total].[Children})。[currentmember不是[[Offer].[Offer].[Offer].[Grand Total Total].],[Circle].[KARNATAKA])我修复了一些括号问题,并将'is not'更改为'not'和'is'。现在可以尝试吗?…如果否,请删除where子句,在该筛选器(整行)之后,使用{[Offer].[Grand Total],[Offer].[Grand Total].Children}在行上…检查错误嗨..!!!非常感谢。现在它工作正常..现在我尝试使用同一查询筛选多个offernames..?是否可以使用“not and is”关闭?我尝试了此查询..在列上选择非空的{[Channel].[Grand Total],[Channel].[Grand Total].[Grand Total].[Children},{[Offer]。除了({[Offer].[Grand Total].[Grand Total].[Children},{[Offer].[Grand Total].[AJOKED]}),除了({[Offer].[Grand Total].[Airauto].]Children},{[Offer].[Grand Total].[Airauto]}在[SCMAircelCube]的行上,其中([Measures].[TotalCount],[BasicCause].[SubscriberProfile].[Active].[ASSAM])但只有第一个“例外”“条件正在工作。即,offername'AJOKED'已被筛选,但'Airauto'未被筛选..您好..!!!,非常感谢。现在它工作正常..现在我正尝试使用同一查询筛选多个offername..?是否可以使用'Exception'条件..?您好..,我尝试了此查询..选择非空{[Channel][Grand Total],[Channel].[Grand Total].[Grand Total].[Grand Total]列上的[Children},除了({[Offer].[Grand Total].[AJOKED]}),除了({[Offer].[Grand Total].[Grand Total].[Airauto]}列上的[SCMAircelCube]中的行上的[Measures].[TotalCount].[BasicCause]。[Subscriber Activate successfully],[Circle].[ASSAM]),但只有第一个“Exception”条件起作用。即,offername“AJOKED”已被筛选,但“Airauto”未被筛选。请使用此选项:Exception({[Offer].[Grand Total].[AJOKED],[Offer].[Grand Total].[Airauto]})嗨..再次感谢…工作正常..问题也解决了..谢谢并问候用户969084