![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Hello, I have in one MDX something like NonEmpty( descendants(a.currentmember,leaves) * descendants(b.currentmember,leaves) * descendants(c.currentmember,leaves) * descendants(d.currentmember,leaves), measures.sales ) The a and b dimensiopn are quite big (customers and products). Is the following approach better? NonEmpty( NonEmpty(descendants(a.currentmember,leaves) ,measures.sales ) * NonEmpty(descendants(b.currentmember,leaves) , measures.sales) * descendants(c.currentmember,leaves) * descendants(d.currentmember,leaves), measures.sales ) Do you have any ideea? Thanks, Radu |
#3
| |||
| |||
|
|
I expect query optimizer will do NonEmpty on each in second expression, and then perform inner join of the results. So, I guess second one is more effective and the order of dimension is also important. I also wish more good information on this. Ohjoo "Radu Colceriu" <radu_colceriu (AT) hotmail (DOT) com> wrote in message news:OECSSSx$GHA.4428 (AT) TK2MSFTNGP04 (DOT) phx.gbl... Hello, I have in one MDX something like NonEmpty( descendants(a.currentmember,leaves) * descendants(b.currentmember,leaves) * descendants(c.currentmember,leaves) * descendants(d.currentmember,leaves), measures.sales ) The a and b dimensiopn are quite big (customers and products). Is the following approach better? NonEmpty( NonEmpty(descendants(a.currentmember,leaves) ,measures.sales ) * NonEmpty(descendants(b.currentmember,leaves) , measures.sales) * descendants(c.currentmember,leaves) * descendants(d.currentmember,leaves), measures.sales ) Do you have any ideea? Thanks, Radu |
![]() |
| Thread Tools | |
| Display Modes | |
| |