私はSSAS CubesとMDXを学習しようとしています。これまでのところ、私はキューブブラウザを通して見たときに正しいデータ/計算を返すキューブを作成することができました。OLAP MDXクエリの理解に役立つ
クエリビルダを使用してレポートサービスでクエリを作成してキューブを照会しましたが、これは生成されたMDXを見て実際の結果に影響を与えないものを引き出しました。私は構文上に読んだ
SELECT NON EMPTY { [Measures].[AverageConnectedSeconds] } ON COLUMNS,
NON EMPTY { ([Operator].[ACCESS DEF].[ACCESS DEF].ALLMEMBERS * [Calls].[Notification Time Bands].[Notification Time Bands].ALLMEMBERS) } ON ROWS
FROM (SELECT (-{ [Calls].[Notification Time Bands].&[0] }) ON COLUMNS
FROM (SELECT ({ [Calls].[Incoming YN].[N] }) ON COLUMNS
FROM (SELECT (-{ [Calls].[Entity Type].&[6] }) ON COLUMNS
FROM (SELECT (-{ [Calls].[Reason Text].&[Background Call] }) ON COLUMNS
FROM (SELECT ({ STRTOMEMBER(@OperatorId) }) ON COLUMNS
FROM [PNC5data])))))
と私はは私はクエリがネストされた選択をしている理由を理解THINK:クエリは次のようになります。 ネストされたSELECT FROMがSQLのWHERE句として機能していることを理解していますか?
もしそうなら、WHERE句はMDXで何のために使われていますか?また、いつ/私がそれを使うのですか?
誰かがこのクエリで実際に起こっていることの内訳を教えていただけたら、本当にありがとう!または、私をリソースに導くことができれば、MDXの理解をさらに深めることができます。私は素晴らしいでしょう!
おかげで、句が簡単です
ジェームズ
SQLのWHEREはMDXのWHEREと同じではないと言うのは間違いなく非常に重要です。 –