Passage de plusieurs paramètres dans une requête MDX pour la clause WHERE
-
05-07-2019 - |
Question
Si j'ai une requête MDX simple telle que:
SELECT
NON EMPTY { [Measures].[Amount] } ON COLUMNS,
NON EMPTY { [Date].[Date].[Date] }
ON ROWS FROM [MyCube]
Et je veux le filtrer par un ID et une autre dimension, cela est assez facile.
SELECT
NON EMPTY { [Measures].[Amount] } ON COLUMNS,
NON EMPTY { [Date].[Date].[Date] }
ON ROWS FROM [MyCube]
WHERE (Asset].[Id].&[123])
mais si j'ai plusieurs identifiants, y a-t-il un moyen de les passer sans créer dynamiquement la requête MDX?
La solution
Je ne suis pas sûr à 100% de ce que vous entendez par ne pas créer de manière dynamique la requête MDX, mais la forme de la requête que vous souhaitez est la suivante:
SELECT
NON EMPTY { [Measures].[Amount] } ON COLUMNS,
NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
[Asset].[Id].&[123],
[OtherDim].[Foo].&[3919]
)
... donc je suppose que cela nécessiterait une construction dynamique, mais rien de trop stressant.
Autres conseils
Essayez ceci:
SELECT
NON EMPTY { [Measures].[Amount] } ON COLUMNS,
NON EMPTY { [Date].[Date].[Date] } ON ROWS
FROM [MyCube]
WHERE (
{ [Asset].[Id].&[123],[Asset].[Id].&[124]}
)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow