根据字母顺序将RANK函数应用于集合 [英] Apply RANK function to a set according to alphabetical order
本文介绍了根据字母顺序将RANK函数应用于集合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有可能创建一种度量,以根据字母的字母顺序生成集合的排名,即Aleen应该为1....Zebedie应该排名为101(集合有101个项目)
Is it possible to create a measure that produces the rank of a set according to their alphabetical order i.e. Aleen should be 1 .... Zebedie should be ranked 101 (set has 101 items)
这不起作用:
MEMBER [Measures].[Alphabetic_Rank] AS
RANK(
[CustomerName].CurrentMember,
ORDER(
[CustomerName],
[CustomerName],
ASC
)
)
编辑
尝试应用此操作的另一个示例如下:
A further example of trying to apply this is the following which also does not work:
WITH
SET [orderedSet] AS
ORDER(
[Operator].members,
[Operator].currentmember.name,
BASC
)
MEMBER [Measures].[newMeasure] AS
RANK(
[orderedSet].currentmember,
[orderedSet].members
)
SELECT
{} ON COLUMNS,
[orderedSet]
*
[Measures].[newMeasure] ON ROWS
FROM [ourCube]
推荐答案
如何使用NAME作为订单的数值:
How about using the NAME as order's numerical value :
MEMBER [Measures].[Alphabetic_Rank] AS
RANK(
[CustomerName].CurrentMember,
ORDER(
[CustomerName].members,
[CustomerName].currentMember.NAME,
BASC
)
)
第二部分的
WITH
SET [orderedSet] AS
ORDER(
[Operator].members,
[Operator].currentmember.name,
BASC
)
MEMBER [Measures].[newMeasure] AS
RANK(
[Operator].currentmember,
[orderedSet]
)
SELECT
[Measures].[newMeasure] ON COLUMNS,
[orderedSet] ON ROWS
FROM [ourCube]
这篇关于根据字母顺序将RANK函数应用于集合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文