我有问题限制在MDX查询,使用除了在功能where子句。我需要检索的一组数据的但不是在一个特定的集合。然后我创建的下一个查询:

select {[Measures].[Amount], [Measures].[Transaction Cost], [Measures].[Transaction Number]} ON COLUMNS,{[ManualProcessing].[All ManualProcessings].[MAGNETICSTRIPE], ManualProcessing].[All ManualProcessings].[MANUAL]} ON ROWS 
FROM [Transactions]
where except([Product].[All Products].Children,{[Product].[All Products].[Debit})

显然这工作得很好,但是当我尝试添加其他限制切片机,我得到这个错误:没有匹配功能签名(设置,会员)

我目前正在上蒙德里安3.1

是否有可能多个限制添加到限幅器时,即时通讯唱除了功能? 是否有任何其他的方式来得到这个?

有帮助吗?

解决方案 2

显然,这不能在蒙德里安完成,因为存在不允许化合物切片机的一个错误。我发现使用蒙德里安OLAP Server的一个很好的解决方案。它的创建成员不包括的一组我不想。它看起来像这样。

WITH member [Product].[Except] as ([Product].[All  Products]) - 
([Product].[All Products].[Debit]) 
SELECT {[Measures].[Amount],[Measures].[Transaction Cost], [Measures].[Transaction Number]} ON COLUMNS,
{[ManualProcessing].[All ManualProcessings].[MAGNETICSTRIPE],[ManualProcessing].[All ManualProcessings].[MANUAL]} ON ROWS 
FROM [Transactions] 
WHERE[Product].[Except]

其他提示

除功能的只适用于套。 但是你可以使用N于您的where尺寸:

select {[Measures].[Amount], [Measures].[Transaction Cost], [Measures].[Transaction Number]} ON COLUMNS,{[ManualProcessing].[All ManualProcessings].[MAGNETICSTRIPE], ManualProcessing].[All ManualProcessings].[MANUAL]} ON ROWS 
FROM [Transactions]
where 
   (
      except([Product].[All Products].Children,{[Product].[All Products].[Debit}),
      except([Set],[Set to exclude])
   )

本作品Analysis Services 2005中,它应该在蒙德里安的工作

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top