【发布时间】:2017-05-02 10:40:44
【问题描述】:
我正在尝试使用子查询来计算行数(每个州的邮政编码)... 请帮助我理解以下行为。 MDX:
WITH
SET [rows] AS
{[Customer].[Postal Code].members}
MEMBER [Measures].[RowsCount] AS
Count
(
[rows]
)
MEMBER [Measures].[RowsCount1] AS
Count
(
{[Customer].[Postal Code].members}
)
SELECT
{
[Measures].[RowsCount]
,[Measures].[RowsCount1]
} ON columns
FROM
(
SELECT
(
{[Customer].[State Province Name].&[Hamburg]}
) ON Columns
FROM [Analysis Services Tutorial]
)
- 为什么 [Measures].[RowsCount] 和 [Measures].[RowsCount1] 使用相同的集合:“{[Customer].[Postal Code].members}”)返回不同的结果?
- 仅 [Measures].[RowsCount] 返回正确/预期的结果,但我的目标是避免“WITH SET”定义,并且仅使用 [Measures].[RowsCount1] 内联,它应该返回正确的结果.
编辑
以下语句将是一个解决方案:
MEMBER [Measures].[RowsCount1] AS
Count
(
{[Customer].[Postal Code].members} * {[Customer].[State Province Name].&[Hamburg]}
)
但是我想通过使用CurrentMember 函数来实现它,就像这样(不起作用):
MEMBER [Measures].[RowsCount1] AS
Count
(
{[Customer].[Postal Code].members} * {[Customer].[State Province Name].CurrentMember}
)
【问题讨论】: