次のような MDX クエリがあるとします。
SELECT Measure1, Measure2, Measure3 ON COLUMNS
[Region].[Region].[Region] ON ROWS
FROM TheCube
3 つすべてのメジャーが空の行を除外する場合は、高速に動作する SELECT NON EMPTY を使用します。しかし、実際には、Measure3 に値がある場合でも、Measure1 と Measure2 の両方が空の行を除外する必要があります。この特定のキューブでは、Measure3 に常に値があるため、NON EMPTY はまったく効果がありません。
私はそれをできた
SELECT Measure1, Measure2, Measure3 ON COLUMNS
FILTER ([Region].[Region].[Region],
NOT (IsEmpty(Measure1) AND IsEmpty(Measure2)) ON ROWS
FROM TheCube
それも機能しますが、永遠に時間がかかります。上記の NON EMPTY クエリよりも桁違いに長くなります。実際、FILTER(..., 1=1) のように常に true になる式でフィルタリングしても、かなりの時間がかかります。
Measure1 と Measure2 の両方が空の行を除外するより効率的な方法はありますか?