马上注册,结交更多数据大咖,获取更多知识干货,轻松玩转大数据
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 乔帮主 于 2014-11-4 10:32 编辑
WEBI 自带排名功能,但排名功能只能进行前N和后N项;e.g. 对Orders排名,取出名次前10的客户,再按名次进行拆分;分成两个表格显示:表格1-(排名1-5的客户),表格2-(排名6-10的客户)。
此时表格2排序(6-10),使用WEBI的标准排序功能就无能为力了;
替代方法是用WEBI的函数-
rank([Orders],[Customer];Top);取出所有客户的名次后,只需在过滤器中限定,就可以对名次进行任意的拆分。
Rank说明
按维对度量排名
函数组
数值
语法
int Rank(measure;[ranking_dims][;Top|Bottom][;(reset_dims)])
输入
参数 | 说明 | 类型 | 必需 | measure | 要排名的度量 | 度量 | 是 | ranking_dims | 要用于对度量排名的维 | 维列表 | 否 | Top|Bottom | | 关键字 | 否(Top 为默认值) | reset_dims | 重置排名的维 | 维列表 | 否 |
注意
- 如果不指定排名维,该函数使用默认计算上下文计算排名。
- 即使在排名列表或重置维列表中只有一个维,仍必须始终将维放在圆括号中。
- 在指定一组排名或一组重置维时,必须用分号将其分开。
- 默认情况下,通过节或块拆分来重置排名。
示例
在下表中,通过 Rank([Revenue];([Country])) 进行排名:
Country
| Revenue
| Rank
| France
| 835,420
| 2
| US
| 2,451,104
| 1
|
在下表中,通过 Rank([Revenue];([Country]);Bottom) 进行排名。Bottom 参数意味着度量按降序排名。
Country
| Revenue
| Rank
| France
| 835,420
| 1
| US
| 2,451,104
| 2
|
在下表中,通过 Rank([Revenue];([Country];[Resort])) 进行排名:
Country
| Resort
| Revenue
| Rank
| France
| French Riviera
| 835,420
| 3
| US
| Bahamas Beach
| 971,444
| 2
| US
| Hawaiian Club
| 1,479,660
| 1
|
在下表中,通过 Rank([Revenue];([Country];[Year]);([Country])) 进行排名。根据“Country”维重置排名。
Country
| Year
| Revenue
| Rank
| France
| FY1998
| 295,940
| 1
| France
| FY1999
| 280,310
| 2
| France
| FY2000
| 259,170
| 3
| US
| FY1998
| 767,614
| 3
| US
| FY1999
| 826,930
| 2
| US
| FY2000
| 856,560
| 1
|
|