В MDX рассчитайте рейтинг продаж данного магазина - PullRequest
1 голос
/ 18 октября 2010

У меня есть OLAP-куб , содержащий количество продаж для каждого из моих магазинов.

Используя MDX , как я могу вывести ранг данного магазина?

Я мечтаю о чем-то подобном ниже ( не работает ), он вернется 8, если SomeShop является 8-м самым продаваемым магазином:

SELECT RANK( [Shop].CHILDREN, [Shop].[SomeShop]) from [Sales]

Ответы [ 2 ]

0 голосов
/ 04 ноября 2010

Вот решение, которое я нашел.
Любое лучшее решение будет с благодарностью.

WITH MEMBER [Measures].[rank] AS RANK(
      [Shop].CurrentMember,
      Order(
         [Shop].Members,
         [Measures].[salescount],
         BDESC
      ),
      [Measures].[salescount]
   )
SELECT Order(
         [Shop].Members,
         [Measures].[salescount],
         BDESC
      ).Item([SomeShop]) ON COLUMNS,
[Measures].[salescount] ON ROWS
FROM [Sales]
0 голосов
/ 18 октября 2010

Вы должны проверить примеры на msdn , последний пример будет работать здесь.
Примерно так:

WITH MEMBER [Measures].[rank] AS RANK( [Shop].CurrentMember, [Shop].MEMBERS)
SELECT {[Measures].[rank], ...} on 0
ORDER([Shop].MEMBERS, [Measures].[rank], ASC) on 1
FROM [Sales]
...