MDX-запрос топ-10 иерархии - PullRequest
0 голосов
/ 21 ноября 2018

Я не могу написать запрос 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}}) возвращает набор кортежей, но я не знаю, каким должен быть запрос?

1 Ответ

0 голосов
/ 22 ноября 2018

Попробуйте, я использовал приключенческие работы

select {[Measures].[Reseller Order Count]
} on columns,
topcount
(
([Geography].[Country].[Country],[Geography].[City].[City])
,10,[Measures].[Reseller Order Count]
)

on rows 
from [Adventure Works]

Результат

...