Я хотел бы объединить два запроса MDX
из разных размеров по столбцам. Пример:MDX Union Across Different Dimensions
Number of Sales/Product Type vs. Gender and State:
| CA | OR | WA | Male | Female
------------------------------------------------
food | 125 | 343 | 130 | 570 | 459
------------------------------------------------
drink | 123 | 465 | 135 | 678 | 343
Государства и Пол являются их собственными соответствующими размерами, и я хотел бы сделать некоторые агрегации (например, счета продаж.) По различным видам продукции (продукты питания, напитки). Ниже приводится некоторое представление о том, как это может работать, хотя запросы не могут быть объединены, поскольку они имеют разные иерархии. Как я могу прибегнуть к помощи мужчин и женщин, например, в качестве столбцов в этом результате?
SELECT
NON EMPTY
{ [Store].[Store State].Members, [Gender].[Gender].Members } ON COLUMNS,
{ [Product].[Product Family].Members } ON ROWS
FROM [Sales]
WHERE { [Measures].[Sales Count] }
Пример ошибки:
MondrianEvaluationException: Expressions must have the same hierarchy
Есть ли способ сделать это эффективно в MDX ,? Если да, могу ли я указать конкретные агрегаты для каждой колунды (например, данные совокупного состояния по общему объему продаж, полные данные по прибыли).
Спасибо за вашу помощь
Благодарим вас за четкий ответ. Я увеличил свой запрос и получил несколько разумные результаты. Итак, похоже, CrossJoin() ing - единственный способ получить множества из разных измерений в форму, где они могут быть Union() ed? Я полагаю, что если бы я хотел добавить еще один столбец из отдельного измерения, мне пришлось бы пересечь все три набора в каждом члене союза? – Shrim
@Shrim Да, это правильно. – FrankPl