MDX中Filter 与Exist的区别
?
? ? | ? |
獲得一個(gè)集合,這個(gè)一般用來(lái)篩選出一個(gè)自定義的set,比如在中國(guó)的餐廳
該set返回所有MSDNteam下并且在Fact Thread度量上有記錄的products
用Exists實(shí)現(xiàn)
select
Exists(
[Dim Queue].[Product - Queue].MEMBERS,
[Dim Engineer].[Team - Engineer].[Team Name].&[MSDN],
"Fact Thread"
)
on 0 from Palladium
用Filter實(shí)現(xiàn)
select
Filter
(
([Dim Engineer].[Team - Engineer].[Team Name].&[MSDN],[Dim Queue].[Product - Queue].MEMBERS),
[Measures].[Incoming thread number] > 0
)
on 0 from Palladium
Filter返回的set有兩個(gè)層次,Queue和Team
Exists返回的set只有Queue這一個(gè)層次。Exist返回的結(jié)果集比較干凈。
但Exists的缺點(diǎn)是只能判斷一個(gè)度量組在這個(gè)維度上是否有值,而不能比較具體的值。
如果我們?cè)S多對(duì)具體值來(lái)過(guò)濾,又只想返回某一個(gè)維度的set的話,就需要綜合這兩種做法了。
select
Filter(
Exists(
[Dim Queue].[Product - Queue].MEMBERS,
[Dim Engineer].[Team - Engineer].[Team Name].&[MSDN]
,"Fact Thread"
)
, [Measures].[Incoming thread number] > 0
)
on 0 from Palladium
希望這篇文章能幫到你。
轉(zhuǎn)載于:https://www.cnblogs.com/sthinker/p/6182703.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的MDX中Filter 与Exist的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 徐以杓酌油沥之自钱孔入而钱不湿的翻译
- 下一篇: 2016-12-17 新浪博客服务器挂掉