2
這樣就OK了運行之前創建自定義設置:它是更快地使用RANK函數
WITH
MEMBER [Measures].[Players_Rank] AS
RANK(
[Player].[Player].CurrentMember,
NONEMPTY(
[Player].[Player].members,
[Measures].[Score]),
[Measures].[Score]
)
但這運行快了很多:
WITH
SET X AS
NONEMPTY(
[Player].[Player].members,
[Measures].[Score])
MEMBER [Measures].[Players_Rank] AS
RANK(
[Player].[Player].CurrentMember,
X,
[Measures].[Score]
)
通過分隔條件了NONEMPTY
組,打之前計算它RANK
函數我們得到了性能增益 - 爲什麼?
參照對MSDN RANK函數的基準的類似的方法被用於在這裏: http://technet.microsoft.com/en-us/library/ms144726.aspx
+1非常有用的鏈接。想想我會尋找一本便宜的[書Mosha co-written](http://www.amazon.co.uk/Fast-Track-MDX-Server-2000/dp/1846281741) – whytheq
@whytheq請請注意,本書似乎適用於AS 2000,此後有很多變化。實際上,AS 2005對整個軟件的重寫或多或少都是完全不同的。 – FrankPl
....但他的博客多大? (可惜他被轉移到了Bing ...)。試圖對搜索腳本進行一些小修改,但不工作 - 想知道爲什麼? (我沒有正確使用OR運算符 - [http://stackoverflow.com/questions/21240881/adding-or-into-the-filter-function](http://stackoverflow.com/questions/21240881/adding-or -INTO最濾波器函數)) – whytheq