Дата первого и последнего измерения для наборов в MDX - PullRequest
2 голосов
/ 12 декабря 2008

Я ищу несколько советов о том, как подойти к MDX-запросу. Моя ситуация такова, что у меня происходят продажи, которые составляют основу таблицы фактов и являются мерами. У меня есть измерение продуктов и измерение клиента. У меня также есть измерение даты и измерение времени, я разделила их, чтобы сохранить количество элементов в измерениях на низком уровне.

Я пытаюсь написать запрос, который запрашивает первую и последнюю покупку для каждого клиента по каждому продукту. Итак, пример набора результатов может выглядеть так:

Car - Bob - 2008-12-10 - 15:39 - 2008-12-11 - 16:44
Car - Bill - 2008-12-12 - 09:16 - 2008-12-12 - 09:16
Van - Jim - 2008-12-11 - 14:02 - 2008-12-12 - 22:01

Итак, Боб купил две машины, и у нас есть первая и последняя покупки, Билл купил одну машину, поэтому первая и последняя покупки совпадают, Джим, возможно, купил три фургона, но мы показываем только первую и последнюю.

Я пытался использовать TAIL, но, похоже, не могу правильно настроить наборы, чтобы показать последнюю покупку для каждого клиента. Даже тогда истечение срока действия HEAD для первой покупки показало, что я не мог использовать одно и то же измерение дважды на одной оси. Это также усложняется тем фактом, что в день может быть несколько покупок, поэтому мне нужен запрос: последний раз для последней даты для каждого покупателя для каждого продукта и первый раз для первой даты для каждого покупателя для каждого продукта .

Я не обязательно прошу точный ответ на вопрос, хотя это помогло бы, но меня интересует подход и лучшие методы для использования. Платформа - SQL Server Analysis Services 2005.

1 Ответ

2 голосов
/ 13 декабря 2008

Разве вы не можете просто использовать минимальные и максимальные агрегаты на дату покупки? Или я полностью пропустил проблему?

...