1

我是 MDX 的新手,并且有一个简单的要求,用 SQL 很容易做到,但我想用 MDX 来完成。

我想组合 2 个查询的结果,所以在查询多维数据集时,我只发送 1 个查询。

 
在列上选择 topcount( [Fact].[Year].children, 1,[Measures].[MoneyIn])
来自 [立方体]  

还有这个 MDX 查询,在几年内获得最少的钱。

 
在列上选择 bottomcount( [Fact].[Year].children, 1,[Measures].[MoneyIn])
来自 [立方体]  

有没有一种简单的方法可以使用 MDX 完成此任务?理想情况下,我会有一些东西:

最大值最小值
10k -10k

谢谢!所有帮助表示赞赏!

4

1 回答 1

1

您可以用几种不同的方式编写查询。这将计数放在一列中:

SELECT [Measures].[MoneyIn] ON COLUMNS,
{TOPCOUNT([Fact].[Year].children,1, [Measures].[MoneyIn]),
BOTTOMCOUNT([Fact].[Year].children,1, [Measures].[MoneyIn])} ON ROWS
FROM [Cube]

这更接近您的输出,但没有命名列

SELECT [Measures].[MoneyIn] *
       {TOPCOUNT([Fact].[Year].children,1, [Measures].[MoneyIn]),
        BOTTOMCOUNT([Fact].[Year].children,1, [Measures].[MoneyIn])
       } ON COLUMNS
FROM [Cube]
于 2013-01-04T13:18:27.977 回答