我是MDX的新手,并且有一个简单的要求,使用SQL很容易,但我想用MDX来完成这个。
我想结合2个查询的结果,所以在查询多维数据集时,我只发送超过1个查询。
select topcount( [Fact].[Year].children, 1,[Measures].[MoneyIn]) on columns from [Cube]
以及此MDX查询,以获得最少的资金,为期数年。
select bottomcount( [Fact].[Year].children, 1,[Measures].[MoneyIn]) on columns from [Cube]
使用MDX有一种简单的方法可以实现这一目标吗?理想情况下,我会有一些东西:
MaxValue MinValue 10k -10k
谢谢!所有帮助表示赞赏!
答案 0 :(得分: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]