У меня есть следующий запрос:MDX: фильтр родители с детьми
SELECT
NON EMPTY { [Measures].[Mes] } ON COLUMNS,
NON EMPTY { [Dim].[Lev1].Members, [Dim].[Lev2].Members } ON ROWS
FROM [Cube]
Где LEV2 является иерархическим потомком Lev1. Это дает мне следующий результат:
Lev1 | Lev2 | Mes
_________________
yes | 1 | 1
yes | 2 | 2
no | 3 | 3
no | 4 | 4
EDIT: Может быть, эта точка зрения является более актуальным:
Dim | Mes
- yes | 3
1 | 1
2 | 2
- no | 7
3 | 3
4 | 4
То, что я хочу, чтобы фильтровать Lev1 с LEV2 = 2 или LEV2 = 4, чтобы получить следующее результат:
Lev1 | Mes
___________
yes | 2
no | 4
Возможно ли это?
Я использую Mondran и Olap4j.
Lev1 и Lev2 являются соответственно родительскими и дочерними элементами одной и той же иерархии в Dim-измерении. Поэтому они не могут быть разделены на две разные оси. Поэтому я попытался использовать агрегат и «FakeDimension», но результат неверен ([yes | 6] и [no | 6]). Но может быть, это ошибка мондриан? – jBravo
@pDupond Я не знаю Мондриана в деталях. Но в Analysis Services, если 'Lev1' и' Lev2' являются двумя уровнями одной и той же иерархии, вы не можете даже вернуть их в виде двух отдельных столбцов в заголовках строк, но только в том случае, когда один столбец с элементами обоих уровней смешан. У вас есть иерархии атрибутов из столбцов, на основе которых эти уровни доступны в вашем кубе? – FrankPl
Прошу прощения за плохое качество моих объяснений. Я редактировал свой вопрос. Надеюсь, это будет более актуально. – jBravo