0

我正在尝试使用等效的 SQL 编写 MDX 查询:

SELECT m.ID, m.CID, m.Orders
FROM dbo.Measures as m
WHERE SUBSTRING(m.CID, 1, 4) <> 'PID_'

本质上,排除 CID 开头的所有行'PID_'

到目前为止,这是我在 MDX 中所拥有的:

SELECT 
{
    [Measures].[ID] AS ID,
    [Measures].[Orders] AS NumberOfOrders,
}
ON COLUMNS, 
{
    [Channel].[Channel Account ID].[Channel Account ID].Members
    * [Channel].[Channel].[Channel].Members // exclude accounts starting with 'PID_'
}

我已经尝试过EXCEPTand -andWHERE子句,但似乎没有一个有效。

任何帮助表示赞赏!

4

1 回答 1

1

我通过 xQbert 提供的链接找到了答案。

这是答案:

ON COLUMNS, 
{
    FILTER([Channel].[Channel Account ID].[Channel Account ID].Members, 
        LEFT([Channel].[Channel Account].Properties("Channel Account ID"), 4) 
            <> "PID_")
    * [Channel].[Channel].[Channel].Members
}
于 2012-12-12T18:36:41.950 回答