【发布时间】:2018-11-21 13:49:44
【问题描述】:
我无法编写 MDX 查询来获取具有层次结构的前 10 个城市。国家和城市的层次结构很简单。
我的结果应该是:
+---------+------------+--------+
| Country | City | Amount |
+---------+------------+--------+
| USA | New York | 123 |
| Germany | Berlin | 65 |
| USA | California | 58 |
| Germany | Munich | 48 |
| Spain | Barcelona | 47 |
| France | Paris | 42 |
| Britain | London | 36 |
| Russia | Moskow | 30 |
| Czech | Prague | 18 |
| Spain | Madrid | 17 |
+---------+------------+--------+
但我明白了:
+---------+------------+--------+
| Country | City | Amount |
+---------+------------+--------+
| USA | New York | 123 |
| Germany | Berlin | 65 |
| USA | California | 58 |
| Germany | Munich | 48 |
| Spain | Barcelona | 47 |
+---------+------------+--------+
MDX 查询:
WITH
SET [~ROWS] AS
TopCount(Hierarchize({{[Site].[Country].Members}, {[Site].[City].Members}}), 10, [Measures].[Amount])
SELECT
NON EMPTY {[Measures].[Amount]} ON COLUMNS,
NON EMPTY [~ROWS] ON ROWS
FROM [My_Cube]
当然,我知道 Hierarchize({{[Site].[Country].Members}, {[Site].[City].Members}}) 返回一组元组,但我不知道,什么是查询应该是什么?
【问题讨论】: