У меня есть таблица фактов с указанием даты измерения с уровнями 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]
в совокупности таблицы за год и т. Д. Я думаю, что делать эти меры в кубе, но в этом случае эти меры будут работать только с совокупной таблицей. Я думаю, что это не правильно.
Я попробую этот вариант и расскажу о его результатах. – Nodon
Он будет использовать только совокупность для суммарной меры. – Nodon
Я думаю, что в определении схемы куба вам нужно указать агрегированный метод (sum, avg и т. Д.). Это может быть причиной. Если вам нужны как сумма, так и средняя, вам может потребоваться добавить еще одну меру для подсчета и, возможно, рассчитали меру для avg с суммой/счетчиком. Но я не уверен в этом. – Aruna