Gibt es eine Möglichkeit zu geben, dass jede Zelle mit MDX gebracht werden soll, zurück?
Frage
Ich verwende eine Abfrage der Form:
Select {
([Measures].[M1], [Time].[2000]),
([Measures].[M2], [Time].[2000]),
([Measures].[M1], [Time].[2001]),
([Measures].[M2], [Time].[2001])
} on 0
From [Cube]
Where
([Some].[OtherStuff])
Analysis Services 2008 verwenden Auch wenn ich nicht NON oder ähnliches bin Angabe, ich bin nur noch drei der Zellen immer wieder (einer von ihnen ist null).
Wie kann ich sicherstellen, dass alle Zellen zurückgebracht - sogar null diejenigen
?Weitere Gedanken: Die Abfrage oben ist nicht wirklich das, was ich laufen werde (überraschenderweise :)). Die wirkliche ein paar Hierarchien aus derselben Dimension als Teil der Auswahl angegeben hat, und auch als Teil der Where-Klausel. Ich frage mich, ob es etwas ist, mit dem zu tun, aber ich kann mich nicht, was genau.
Zusätzliche weitere Gedanken: * Dies scheint eine AS2005 / 8-Funktion namens Auto-exists. Werfen Sie einen Blick auf den entsprechenden Abschnitt auf diese MSDN Artikel .
Lösung
Sie ziehen verschiedene Dimensionen zurück, die nicht allzu gut fliegen. Versuchen Sie stattdessen:
with
member [Time].[Calendar].[CY2000] as
([Time].[Calendar].[2000], [Time].[Fiscal].[All Time])
member [Time].[Calendar].[FY2001] as
([Time].[Calendar].[All Time], [Time].[Fiscal].[2001])
select
{[Time].[Calendar].[CY2000], [Time].[Calendar].[FY2001]}*
{[Measures].[M1], [Measures].[M2]}
on columns
from [Cube]
where
{[Some].[OtherOtherStuff]}
Andere Tipps
keine Antwort, aber dies sollte helfen, das Problem einzugrenzen, eine Abfrage, die das Problem in Adventure
repliziertSELECT
{ ( [Date].[Calendar].[Date].&[1], [Date].[Fiscal].[Date].&[1129] ) } on 0
FROM [Adventure Works]
Ich würde dies erwarten, dass die Tupel angegeben zurück zu bringen und eine Null, sondern sind keine Tupel abgerufen werden.
ich denke, das ist, weil das Tupel auf zwei Hierarchien der gleichen Dimension liegt, wo es keine Gemeinsamkeit ist.