Ich habe eine scheinbar einfache Anforderung eine Abfrage von Preisdaten zu erstellen, die vier Sätze von Preisdaten für andere Daten zurück:Wie Datumsfeldes in MDX-Abfrage mit und ohne Aggregat Gruppe
- Das niedrigste Datum der Bereich
- das höchste Datum des Bereichs
- die Gesamtsumme für den gesamten Bereich
die nächstgelegene ich habe, ist die folgende Abfrage:
WITH set [Range] as {[Effective Date].[Date].&[2015-12-01T00:00:00] : [Effective Date].[Date].&[2015-12-31T00:00:00]}
select
NON EMPTY{
filter([Effective Date].[Date].&[2015-12-01T00:00:00], [Measures].[Plan Price]),
filter([Effective Date].[Date].&[2015-12-31T00:00:00], [Measures].[Plan Price]),
nonempty([Measures].[Money In], [Range]),
nonempty([Measures].[Money Out], [Range])
} on 0,
NON EMPTY{
[Region Manager].[Full Name].[Full Name]
} on 1
from [Cube]
jedoch die Datumsbereiche als solche Rückkehr der Fehler:
Two sets specified in the function have different dimensionality.
Der „Filter“ oder „nicht leer“ Aussagen einzeln arbeiten, aber ich kann sie in einer einzigen Abfrage arbeiten nicht bekommen. Wie kann ich das machen? Wird es hilfreich sein, eine Unterabfrage zu verwenden?
Sie‘ versuchen, eine Reihe von Tupeln zu machen - was in Ordnung ist. Jedes Tupel muss dieselbe "Dimensionalität" haben. Dies bedeutet, dass es diese Struktur "{([A], [B], [C] ...), ([A], [B], [C] ...), ([A], [ B], [C] ...) ...} 'wo A, B und C die gleichen Hierarchien sein müssen, _ in der gleichen Reihenfolge. – whytheq