1.FR自带排序函数SORT(B2) // B2为排序字段;此函数等同于count(B2[!0]{B2 > $B2}) + 1

此函数排名如下 1 2  2   4  5,相同明次无法处理

2.FR组内分组排名公式如下:count(C3[!0;!0]{A3=$A3&&C3>$C3})+1 ;    A为组别 ;  C 为排序值列

c2[!0]:表示c2竖向扩展的所有值!

a2=$a2:表示条件过滤当前组内的值!

c2>$c2:表示条件过滤比当前c2单元格的值大的值!

count():表示计算c2竖向扩展的组内的比当前单元格的大的值的数目,最大的则为0,依次为1……n ,+1后就是排名(从1开始)!

3.分类排名前10名建议用SQL实践 groupby 类别 limited 10  或直接FR结果集筛选

4.SQL实现排序

  1. SELECT
  2. t_time,
  3. code,
  4. name,
  5. CL,
  6. row_number () OVER (partition BY t_time ORDER BY cl) AS 组内排名1,
  7. --T_time组内,cl排名
  8. row_number () OVER (ORDER BY cl) AS 排名1_1,
  9. --所有cl的排名
  10. rank () OVER (partition BY t_time ORDER BY cl) AS 组内排名2,
  11. --T_time组内,cl排名
  12. rank () OVER (ORDER BY cl) AS 排名2_1,
  13. --所有cl的排名
  14. dense_rank () OVER (partition BY t_time ORDER BY cl) AS 组内排名3,
  15. --T_time组内,cl排名
  16. dense_rank () OVER (ORDER BY cl) AS 排名3_1
  17. --所有cl的排名
  18. FROM
  19. zsh_0220
  20. ORDER BY
  21. t_time,code;

排名如下:1 2 2  3 4 5 ,同名次后相连

CUME_DIST ()  解决以下问题

有时候,一些特殊的数据分析,我们很难通过报表单元格界面设计出来!比如我手里有一张企业的薪资表,现在想分析某个人薪资在本部门或全公司处于一个什么水平,就很难实现。在本部门,比他薪资高的人占多少?比他薪资低的又占多少?在本部门……等等。

select  name  , fengshu, class,
  CUME_DIST ()  over (order by fengshu) c1 ,
  CUME_DIST ()  over (partition by class order by fengshu) c2 from fengshu  order by fengshu

其他条件的分析函数有:

row_number() over(partition by … order by …)

rank() over(partition by … order by …)

dense_rank() over(partition by … order by …)

count() over(partition by … order by …)

max() over(partition by … order by …)

select  distinct class, max(fengshu) over(partition by class order by fengshu desc ) from fengshu

min() over(partition by … order by …)

select  distinct class, min(fengshu) over(partition by class order by fengshu ) from fengshu

sum() over(partition by … order by …)

avg() over(partition by … order by …)

first_value() over(partition by … order by …)

last_value() over(partition by … order by …)

lag() over(partition by … order by …)

lead() over(partition by … order by …)

 部分解释:

 count() over(partition by ... order by ...):求分组后的总数。
  max() over(partition by ... order by ...):求分组后的最大值。
  min() over(partition by ... order by ...):求分组后的最小值。
  avg() over(partition by ... order by ...):求分组后的平均值。
  lag() over(partition by ... order by ...):取出前n行数据。  

  lead() over(partition by ... order by ...):取出后n行数据。

  ratio_to_report() over(partition by ... order by ...):Ratio_to_report() 括号中就是分子,over() 括号中就是分母。

  percent_rank() over(partition by ... order by ...):

--------------------------------- 

 over partition by与group by的区别:

  group by是对检索结果的保留行进行单纯分组,一般和聚合函数一起使用例如max、min、sum、avg、count等一块用。partition by虽然也具有分组功能,但同时也具有其他的高级功能。

5.填报动态排名

通过报表内置的rank()函数来变换实现。

RANK(A,B,C):返回一个数在一个数组中的秩(如果把这个数组排序,该数的秩即为它在数组中的序号)

参数说明:

A:所求秩的数(可以是Boolean型,true=1,false=0)

B:可以是数组,引用,或一系列数,非实数的值被忽略处理(接受Boolean型,true=1,false=0)

C:指定求秩的参数,非零为升序,零为降序

3.1 内置数据集

新建模板,添加内置数据集,如下所示:

3.2 模板设置

将字段拖入对应的单元格中,模板设置如下:

给C2单元格添加“数字控件”

D2单元格输入公式:B2+C2

E2单元格输入公式:rank(D2, D2[!0], 0),其中D2[!0]表示D2扩展出来的所有单元格

帆软关于排名公式、分组排名问题开窗函数相关推荐

  1. mysql 怎么实现组内排名_MySQL 实现排名(分组排名)

    在MYSQL的最新版本MYSQL8已经支持了排名函数RANK,DENSE_RANK和ROW_NUMBER.但是在5.*版本中还不支持这些函数,只能自己实现.实现方法主要用到了条件判断语句(CASE W ...

  2. MySQL 实现排名(分组排名)

    在MYSQL的最新版本MYSQL8已经支持了排名函数RANK,DENSE_RANK和ROW_NUMBER.但是在5.*版本中还不支持这些函数,只能自己实现.实现方法主要用到了条件判断语句(CASE W ...

  3. 【excel】分组连续排名和不连续排名公式

    需求场景:对上面的数据进行排名计算,4种情况: ①不考虑commDate,单独对FoldPageNum进行排名,不连续排名: ②不考虑commDate,单独对FoldPageNum进行排名,连续排名: ...

  4. 如何在Excel中分组排名?两个公式轻松搞定!

    点赞再看,养成习惯:桃李不言,下自成蹊. 微信搜索[亦心Excel]关注这个不一样的自媒体人. 本文 GitHub https://github.com/hugogoos/Excel 已收录,包含Ex ...

  5. 权威发布:2020软科中国最好学科排名

    高等教育评价专业机构软科2020年10月15日正式发布"2020软科中国最好学科排名" . 排名榜单包括96个一级学科,各个学科排名的对象是在该一级学科设有学术型研究生学位授权点的 ...

  6. Power BI DAX 分组排名 分层排名

    DAX中通常使用迭代函数Rankx,我们首先了解一下Rankx的基础用法: 1.Rankx基本方法 基础数据如上图 首先建立[度量值]--[销售和] 销量和 = SUM('销量明细'[销量]) 再使用 ...

  7. 刚刚:2021软科世界大学学术排名发布!哈佛第一!国内有157所高校上榜!

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 来源 | 软科 刚刚(2021年8月15日),全球领先的高等教育评价 ...

  8. 2021软科世界大学学术排名发布!哈佛蝉联全球第一,清华位居国内榜首

    来源:深度学习技术前沿.科软本文多图,建议阅读10+分钟在今年的排名中,哈佛大学仍然稳坐头把交椅,连续19年蝉联全球第一,斯坦福大学仅次于哈佛大学,继续保持全球第二名,剑桥大学保持全球第三. 2021 ...

  9. 帆软finereport实现动态切换分组和列表模式

    首先简单说一下什么是帆软报表的"分组"还有"列表", 分组呢,就是这样: 列表呢,就是这样: 简单说,列表就是不合并重复的单元格了,分组就是自动把那些重复的单元 ...

  10. 浸会大学计算机专业硕士排名2019,2019软科世界大学学术排名香港浸会大学排名第701-800...

    2019软科世界大学学术排名指标 获奖校友:获诺贝尔奖和菲尔兹奖的校友折合数,10% 获奖教师:获诺贝尔奖和菲尔兹奖的教师折合数,20% 高被引学者:各学科领域被引用次数最高的学者数量,20% N&a ...

最新文章

  1. Xamarin Essentials教程使用指南针Compass
  2. 大厂笔试 java基础
  3. Interview:算法岗位面试—10.31下午上海某银行总部公司(二面,四大行之一)之项目简介、比赛介绍、某个比赛的过程
  4. 平台电商类的增长策略:从用户激励到养成类游戏
  5. 单链表的快速排序(转)
  6. java 解析日期 t z_date - Java SimpleDateFormat(“yyyy-MM-dd'T'HH:mm:ss'Z'”)给出时区为IST...
  7. 圆桌会议 HDU - 1214(规律+模拟队列)
  8. html textarea 自动高度,HTML页面中textarea高度自适应解决方案
  9. 安卓修改wifi已停用_手机连不上wifi显示已保存怎么回事【原因介绍】
  10. null === undefined_【英】两个“非值”:undefined 和 null
  11. 【官方速报】Pika3.0正式发布
  12. 别信了大佬的“鬼话”,想造无人驾驶到底进展如何吗?
  13. SQL分组字符串相连
  14. 解决anaconda与pycharm冲突导致import无法使用
  15. 盘点国外名企的管理奇招
  16. OBS Studio显示器黑屏
  17. JavaScript排他思想
  18. SMP、NUMA、MPP体系结构
  19. (阿里巴巴开发手册)为什么阿里巴巴推荐内部员工使用StringBuilder?
  20. 计算机技术预测蛋白质结构,蛋白质结构预测:生命科学的又一场竞争

热门文章

  1. 洛谷P1120【小木棍】(搜索+剪枝)
  2. ModelSerializer序列化(Apiview)
  3. springMVC入门二
  4. hdu 1242 找到朋友最短的时间 (BFS+优先队列)
  5. TDirectory.GetDirectoryRoot获取指定目录的根目录
  6. asp.net创建自定义排序用户界面
  7. 智能优化算法(源码)-生物地理学算法(Biogeography-Based Optimization,BBO)
  8. Python3——通用序列操作
  9. python中 return self的作用
  10. python绘图坐标轴|刻度值|刻度||标题设置