2016-10-07 8 views
0

У меня есть таблица фактов с указанием даты измерения с уровнями Year, Quarter, Month, Day, Hour, две меры [Measure].[kind sum], [Measure].[kind avg] и aggragate таблица для каждого уровня даты. Например, у меня есть несколько лет, и мне нужно получить среднее количество дней. В этом случае запрос будет таким:Как сделать aggragate таблицы по уровням даты

WITH 
    MEMBER [Measures].[Pc in avg by day] AS AVG({[Some dimension].Children * Descendants([Date].[2013] : [Date].[2016], [Date].[Day])}, [Measures].[Pc in sum]) 
SELECT {[Measures].[Pc in avg by day]} ON COLUMNS 
FROM [Some cube] 

Существует способ, как оптимизировать запрос. Мне нужно сохранить значения, такие как [Pc in avg by day], [Pc in avg by month], [Pc in avg by quarter] в совокупности таблицы за год и т. Д. Я думаю, что делать эти меры в кубе, но в этом случае эти меры будут работать только с совокупной таблицей. Я думаю, что это не правильно.

ответ

1

Я не совсем понимаю ваш вопрос. Я думаю, вы хотите получить [Pc in avg by month], [Pc in avg by quarter] одинаково, как [Pc in avg by day]. Если это так, добавление их в качестве мер для куба может оказаться неправильным.

Как вы сказали, у вас есть сводная таблица за день с мерой [суммарный итог], вы можете добавить разные таблицы агрегатов за месяц, квартал и год и изменить запрос, как показано ниже, если вам нужно [ПК в среднем по месяцам]

WITH 
    MEMBER [Measures].[Pc in avg by month] AS AVG({[Some dimension].Children * Descendants([Date].[2013] : [Date].[2016], [Date].[Month])}, [Measures].[Pc in sum]) 
SELECT {[Measures].[Pc in avg by month]} ON COLUMNS 
FROM [Some cube] 

Mondrian должен быть достаточно интеллектуальным, чтобы выбрать правильную таблицу заполнителей для выполнения запроса. В этом случае ежемесячный агрегат

+0

Я попробую этот вариант и расскажу о его результатах. – Nodon

+0

Он будет использовать только совокупность для суммарной меры. – Nodon

+0

Я думаю, что в определении схемы куба вам нужно указать агрегированный метод (sum, avg и т. Д.). Это может быть причиной. Если вам нужны как сумма, так и средняя, ​​вам может потребоваться добавить еще одну меру для подсчета и, возможно, рассчитали меру для avg с суммой/счетчиком. Но я не уверен в этом. – Aruna

Смежные вопросы