мне нужно сравнить каждый элемент в моем 5-мерном выборе в ячейку, которая находится на пересечении всего два размеровРасчетная величина, основанная на нескольких измерениях. Игнорировать некоторые размеры
У меня есть следующий MDX:
WITH MEMBER [measures].[x] AS
(
[dim1].[dim1].[certainDim1_Member]
,[dim2].[dim2].[certainDim2_Member]
,[measures].[a]
)
SELECT
NON EMPTY {[measures].[a], [measures].[x]} ON 0,
NON EMPTY {
[dim1].[dim1].children
*[dim2].[dim2].children
*[dim3].[dim3].children
*[dim4].[dim4].children
*[dim5].[dim5].children
} ON 1
FROM [cubename]
Проблема заключается в том, что запрос учитывает currentmember
dim3, dim4, dim5. и результат искажен.
Когда я пытаюсь это:
WITH MEMBER [measures].[x] AS
(
[dim1].[dim1].[certainDim1_Member]
,[dim2].[dim2].[certainDim2_Member]
,[dim3].[dim3].[all]
,[dim4].[dim4].[all]
,[dim5].[dim5].[all]
,[measures].[a]
)
запрос умирает 2+ минут из памяти не хватает
в то время как это
WITH MEMBER [measures].[x] AS
(
[dim1].[dim1].[certainDim1_Member]
,[dim2].[dim2].[certainDim2_Member]
,[dim3].[dim3].[all]
,[dim4].[dim4].[all]
--,[dim5].[dim5].[all]
,[measures].[a]
)
возвращает результат в течение 3 секунд.
Я должен использовать все 5 размеров и даже больше.
Я бы подумал, что у вас есть сложная логика агрегации не по умолчанию для вычисления членов «Все» dim 4 и 5 в сценарии вычисления вашего куба. На этот вопрос может быть очень сложно ответить, не зная всех деталей сценария расчета, а также дизайна куба (группы мер, размеры и их отношения). Поэтому я не уверен, что он хорошо подходит для StackOverflow. – FrankPl
от FrankPI MS есть активный форум ssas: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/home?forum=sqlanalysisservices – whytheq