Агрегирование результатов для всех версий медленно меняющегося измерения - PullRequest
1 голос
/ 17 декабря 2009

Я собираю значения для всех версий медленно меняющегося измерения. Вот упрощенное объяснение проблемы.

У меня есть измерение Product, и у этого измерения есть атрибут ProductGroup.
Продукты время от времени меняют группы товаров.

Измерение Product - это медленно изменяющееся измерение, и изменение происходит, когда оно перемещается между ProductGroups. У измерения Product есть ProductKey и ProductBusinessKey.

ProductKey - это уникальный ключ в измерении, а ProductBusinessKey - это ключ от основной системы бронирования. ProductBusinessKey (PBK) является уникальным для продукта и никогда не изменится.

Упрощенная структура таблиц измерений и фактов:

Я использовал следующие сокращения

ПК - ProductKey

PBK - ProductBusinessKey

PG - Группа товаров



Таблица размеров

ПК ПБК Наименование ПГ

1 1 Prod1 ProductGroup1

2 1 Prod1 ProductGroup2

3 2 Prod2 ProductGroup1




Таблица фактов

ПК Доход

1 100

2 100

3 100



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

Prod1 Prod2

200 100



На данный момент я использую MDX

SELECT

[ProductDimension].[Product].Children On Columns

FROM

TheCube

WHERE

[Measures].[Revenue]

И это приводит к следующим результатам

Prod1 Prod1 Prod2

100 100 100

Мне было интересно, как я могу структурировать запрос, чтобы он возвращал результаты как

Prod1 Prod2

200 100

Любая помощь очень ценится.

Ответы [ 2 ]

1 голос
/ 22 декабря 2009

Самый простой способ - создать атрибут с ключом ProductBusinessKey, а затем использовать его в своем запросе.

0 голосов
/ 17 декабря 2009

Если вы используете SUM (..) для показателя [Доход] с течением времени из измерения времени, он покажет желаемые результаты.

...