Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Returnerar den enbaserade rangen för en specificerad tuple i en specificerad mängd.
Syntax
Rank(Tuple_Expression, Set_Expression [ ,Numeric Expression ] )
Arguments
Tuple_Expression
Ett giltigt Multidimensional Expressions (MDX)-uttryck som returnerar en tupel.
Set_Expression
Ett giltigt Multidimensional Expressions (MDX)-uttryck som returnerar en mängd.
Numeric_Expression
Ett giltigt numeriskt uttryck som vanligtvis är ett Multidimensional Expressions (MDX)-uttryck av cellkoordinater som returnerar ett tal.
Remarks
Om ett numeriskt uttryck specificeras bestämmer Rank-funktionen den enbaserade rangen för den angivna tuplen genom att utvärdera det angivna numeriska uttrycket mot tuplen. Om ett numeriskt uttryck specificeras, tilldelar Rank-funktionen samma rang till tupler med dubblettvärden i mängden. Denna tilldelning av samma rang till dubblettvärden påverkar rangen för efterföljande tupler i mängden. Till exempel består en mängd av följande tupler, {(a,b), (e,f), (c,d)}. Tuplen (a,b) har samma värde som tuplen (c,d). Om tuplen (a,b) har rang 1, skulle både (a,b) och (c,d) ha rang 1. Dock skulle tuplen (e,f) ha rank 3. Det kunde inte finnas någon tuple i detta set med rank 2.
Om ett numeriskt uttryck inte specificeras, returnerar Rank-funktionen den enbaserade ordinala positionen för den angivna tuplen.
Rank-funktionen ordnar inte mängden.
Example
Följande exempel returnerar uppsättningen av tupler som innehåller kunder och inköpsdatum, genom att använda funktionerna Filter, NonEmpty, Article och Rank för att hitta det senaste datumet då varje kund gjorde ett köp.
WITH SET MYROWS AS FILTER
(NONEMPTY
([Customer].[Customer Geography].MEMBERS
* [Date].[Date].[Date].MEMBERS
, [Measures].[Internet Sales Amount]
) AS MYSET
, NOT(MYSET.CURRENT.ITEM(0)
IS MYSET.ITEM(RANK(MYSET.CURRENT, MYSET)).ITEM(0))
)
SELECT [Measures].[Internet Sales Amount] ON 0,
MYROWS ON 1
FROM [Adventure Works]
Följande exempel använder Order-funktionen istället för Rank-funktionen för att rangordna medlemmarna i stadens hierarki baserat på Reseller Sales Amount-måttet och visar dem sedan i rangordnad ordning. Genom att använda Order-funktionen för att först ordna mängden medlemmar i Stadens hierarki görs sorteringen endast en gång och följs sedan av en linjär skanning innan den presenteras i sorterad ordning.
WITH
SET OrderedCities AS Order
([Geography].[City].[City].members
, [Measures].[Reseller Sales Amount], BDESC
)
MEMBER [Measures].[City Rank] AS Rank
([Geography].[City].CurrentMember, OrderedCities)
SELECT {[Measures].[City Rank],[Measures].[Reseller Sales Amount]} ON 0
,Order
([Geography].[City].[City].MEMBERS
,[City Rank], ASC)
ON 1
FROM [Adventure Works]