объединить 2 запроса MDX в одну таблицу - PullRequest
1 голос
/ 20 сентября 2019

Мне нужно объединить результат 2 запроса в одну таблицу.Запросы аналогичны, за исключением одного из условий WHERE.Насколько мне удалось выяснить во время поиска в Google, это невозможно сделать, поскольку у MDX есть внутренние соединения в дизайне базы данных.

Я пытался использовать этот способ: Слияние 2 запросов MDX Но оказывается, что через 1 час я получаю эту ошибку: XML для анализатора анализа: Время ожидания запроса XML для анализа истекло раньшеэто было завершено.

Я пытался сделать так, чтобы новые участники:

    member new_A AS
        aggregate
        (
            K
            ,
            A
        )

А потом

select { new_A, ...


select { A , B , C , D } on 0,
non empty { Y * Z } on 1
from X
where (except(K), L, M, N, P);

select { A , B , C , D } on 0,
non empty { Y * Z } on 1
from X
where (K, L, M, N, P);

Что мне нужно получить вend - это таблица, содержащая значения элементов A, B, C, D в виде столбцов только для условия K и для всех, кроме условия K рядом с ним.это может быть либо A, new_A, B, new_B и т. д., либо A, B, C, D, new_A, new_B и т. д.

База данных PS очень велика, и чем быстрее она работает, тем лучше:)

Ответы [ 2 ]

0 голосов
/ 24 сентября 2019

Спасибо всем!Было решено выполнять запросы параллельно, чтобы ускорить.Вернуть данные, которые будут заполнены в наборе данных, а затем использовать Linq для работы с ним.

0 голосов
/ 20 сентября 2019

Итак, я попытался сопоставить вашу проблему с примером базы данных AdventureWorks.В моей проблеме я пытаюсь сообщить [объем продаж через Интернет] для некоторых стран для набора подкатегорий.Затем я редактирую свой запрос, чтобы сообщить о всех подкатегориях, кроме «Дорожные велосипеды» в основных столбцах, а для дорожных велосипедов я использую меры.*enter image description here

Редактировать запрос

with member measures.UsRoadBikes as ([Product].[Subcategory].&[2],[Measures].[Internet Sales Amount])
select non empty
{({[Customer].[Country].&[Australia],[Customer].[Country].&[Canada],[Customer].[Country].&[France],[Customer].[Country].&[United Kingdom],[Customer].[Country].&[United States]},
[Measures].[Internet Sales Amount])}
on columns,
non empty
({[Product].[Subcategory].&[31],[Product].[Subcategory].&[1],[Product].[Subcategory].&[2],[Product].[Subcategory].&[37],[Product].[Subcategory].&[3]},
[Date].[Month of Year].[Month of Year]
) on rows
from [Adventure Works]

Результат

enter image description here

...